Ejemplo n.º 1
0
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();
}
Ejemplo n.º 3
0
/**
 * @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;
}