Returns the internal data pointer of a detected object.


int mira_GetObjDataRegOutput(mrkernelpmr, int entryInd, const float** ppObjData);


Parameters:

  • pmr: A pointer to the runtime kernel returned by mira_Init.
  • entryInd: Object index to get the data of, must be less than mira_GetObjCount.
  • ppObjData: A pointer to a float pointer, should be NULL.


Return value:

MIRA_OK (0) or an error code.


Description:

mira_GetObjDataRegOutput sets a pointer to point to a float array containing the regression output per variable of the requested object.


NOTE: The runtime keeps ownership of the pointer, therefore it must not be deleted.


Example:

  1. int objectCount = 0;
  2. int* pObjectData = NULL;

  3. const int regressionVariableCount = mira_GetRegVarCount(pmr);
  4. float* pRegressionData = NULL;

  5. while (frameInd < frameCount) {
  6.    mira_ProcessFrame(pmr, pFramePtr);

  7.    objectCount = mira_GetObjCount(pmr);
  8.    for (int i = 0; i < objectCount; i++) {
  9.        mira_GetObjDataInt(pmr, i, &pObjectData);

  10.        printf("obj%d : %d,%d\n",
  11.               pObjectData[MIRA_OBJECT_ID],
  12.               pObjectData[MIRA_OBJECT_FRAME],
  13.               pObjectData[MIRA_OBJECT_POS]);

  14.        if (regressionVariableCount > 0) {
  15.            mira_GetObjDataRegOutput(pmr, i, &pRegressionData);
  16.            for (int j = 0; j < regressionVariableCount; j++) {
  17.                printf(" reg%d : %.3f", j, pRegressionData[j])
  18.            }
  19.        }
  20.    }

  21.    pFramePtr += frameSize;
  22. }