/* See {Bary.h} */ /* Last edited on 2009-02-09 18:26:57 by stolfi */ #include #include #include #include #define Bary_C_copyright \ "Copyright © 2001 Universidade Estadual de Campinas (UNICAMP)" void SetWedgeBaryTetra(Wedge_t w, uint order1, uint order2) { w->ca = MakeTetraTopo(order1,order2); w->order1 = order1; w->order2 = order2; } Place_t BaryCorner(Place_t p) { SRBits_t r = PBits(p); return PWedge(p)->ca.p[r]; } void BarySetCorner(Place_t p, Place_t c) { SRBits_t r = PBits(p); PWedge(p)->ca.p[r] = c; } Place_t BaryCCorner(Place_t p) { SRBits_t r = (PBits(p) ^ 1u); return Spin(PWedge(p)->ca.p[r]); } void BarySetCCorner(Place_t p, Place_t c) { SRBits_t r = (PBits(p) ^ 1u); PWedge(p)->ca.p[r] = Spin(c); }