Exemple #1
0
/**
 * Animation that display
 *
 * @param  matrix      La matrice
 * @param  frameNumber Le numéro de la frame courante
 * @param  userData    Données spécifiques
 *
 * @return Animation's status
 */
int none(LEDMATRIX* matrix, int frameNumber, void* userData)
{
	unsigned int i;
	unsigned char data;
	unsigned int dataLength = (matrix->modelWidth > matrix->viewportWidth) ? matrix->viewportWidth : matrix->modelWidth;
	shared_function matrixClearViewportFct;
	shared_function matrixSendViewportFct;

	/* get functions from host */
	matrixClearViewportFct = (shared_function)getHostFunction(hostFunctions, "matrixClearViewport");
	matrixSendViewportFct = (shared_function)getHostFunction(hostFunctions, "matrixSendViewport");

	/* erase all */
	matrixClearViewportFct(matrix);

        printf("Plugin none: copying %d bytes to the viewport\n", dataLength);
	for(i=0; i<dataLength; i++) {
		data = matrix->model[i];
                matrix->viewport[i] = data;
	}

	/* Send the data to the matrix */
	matrixSendViewportFct(matrix);

	/* return the status */
	return ANIMATION_SUCCESS;
}
Exemple #2
0
NativeExecutable* VM::getHostFunction(NativeFunction function, NativeFunction constructor, const String& name)
{
    return getHostFunction(function, NoIntrinsic, constructor, nullptr, name);
}