int main(int argc, char *argv[]) { int i, k, wrank, errs = 0; int dims[MAX_DIMS]; MTest_Init(0, 0); MPI_Comm_rank(MPI_COMM_WORLD, &wrank); if (wrank == 0) { for (k=0; tests[k].size > 0; k++) { zeroDims(tests[k].dim, dims); MPI_Dims_create(tests[k].size, tests[k].dim, dims); if (checkDims(&tests[k], dims)) { errs++; MTestPrintfMsg(1, "Test %d failed with mismatched output", k); if (errs < 10) { fprintf(stderr, "%d in %dd: ", tests[k].size, tests[k].dim); for (i=0; i<tests[k].dim-1; i++) fprintf(stderr, "%d x ", dims[i]); fprintf(stderr, "%d != %d", dims[tests[k].dim-1], tests[k].orderedDecomp[0]); for (i=1; i<tests[k].dim; i++) fprintf(stderr," x %d", tests[k].orderedDecomp[i]); fprintf(stderr,"\n"); } } } } MTest_Finalize(errs); MPI_Finalize(); return MTestReturnValue(errs); }
ScrollingSpriteRenderer::ScrollingSpriteRenderer(GameObject& owner, SpriteSheet* spriteSheet, int layerNum, bool scrollX, bool scrollY) : RenderComponent(owner), spriteSheet_{spriteSheet}, quads{{owner, spriteSheet_},{owner, spriteSheet_},{owner, spriteSheet_},{owner, spriteSheet_}}, sx_{scrollX}, sy_{scrollY}, layerNum_{layerNum}, oldCamPos_(-1, -1) // force an advance() on the first call to render() { checkDims(); initQuads(); }
/** * @brief Create Affine transform from matrix * * This constructor creates the affine transform from a forward matrix. The * input matrix is checked for the proper dimensions (3x3) and is then * inverted to complete the inverse functionality. * * The input matrix must be invertable or an exception will be thrown! * * @param a Forward affine matrix */ Affine::Affine(const Affine::AMatrix &a) { checkDims(a); p_matrix = a.copy(); p_invmat = invert(p_matrix); p_x = p_y = p_xp = p_yp = 0.0; }