int main(int argc, char *argv[]) { int rv; memset(&cl, 0, sizeof(cl)); rv = read_arguments(argc, argv); if (rv < 0) goto out; switch (cl.type) { case ACT_ARBITRATOR: rv = do_arbitrator(); break; case ACT_SITE: rv = do_site(); break; case ACT_CLIENT: rv = do_client(); break; } out: return rv ? EXIT_FAILURE : EXIT_SUCCESS; }
int do_ring (struct layer *l, struct pdb_ATOM *model) { struct ring curr_ring; double rho; int new_site=-1; for (rho = l->rhomin; rho <= l->rhomax; rho+=(l->dr)) { curr_ring = setup_ring (rho, l); /* hack for flagging cavity exposed atoms */ curr_ring.bExposed = (rho == l->rhomin); print_ring(&curr_ring); new_site = do_site (&curr_ring, model); }; return new_site; };