int main(int argc,char *argv[]) { CkPrintf("init called\n"); CrnInitStream(&rs,0,0); int facesA[nFaces*nPer],facesB[nFaces*nPer]; const int nPoints=aPoints+bPoints; CkVector3d pts[nPoints]; FEM_Print("Fabricating points:"); CkVector3d a2bLocs(randVec(CkVector3d(10.0,90.0,50.0))); print("true offset vector "); print(a2bLocs,15); int i; //Fabricate some test points (just purely random) for (i=0;i<aPoints;i++) { pts[i]=randVec(CkVector3d(5.0,5.0,5.0)); pts[i+a2bPoints]=pts[i]+a2bLocs; } makeFaces(facesA,facesB); //Actually do the match: //verbosematchingDest dest; unionFind uf(nPoints); unionFindDest dest(uf); FEM_Print("Finding offset"); linearOffsetMatcher matcher(nFaces,nPer,facesA,facesB,0, nPoints,pts); FEM_Print("Beginning match"); matcher.match(dest); FEM_Print("Compressing paths"); uf.compress(); FEM_Print("Testing union"); testUnion(nPoints,uf.detach()); FEM_Print("Done"); }
int main() { anon1.y = 3; anon2.y = anon1.y; testCopying(); testUnion(); testArgs(); struct c cc; cc.g.a = 3; c.a = 1; c.b = 3; struct a {int x, y; } z; // struct a {int x, y; } z2; z.x = c.a; struct a *pA; pA = &z; pA->x += 5; return pA->x; }