/** * 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; }
NativeExecutable* VM::getHostFunction(NativeFunction function, NativeFunction constructor, const String& name) { return getHostFunction(function, NoIntrinsic, constructor, nullptr, name); }