43 return qtrk->
ScheduleFrame(imgptr, pitch, width, height, positions, numROI, pdt, jobInfo);
66 qtrk->
BuildLUT(data, pitch, pdt, plane);
103 strncpy(dst, qtrk->
GetWarnings().c_str(), maxStrLen);
virtual int GetResultCount()=0
Get the number of finished localization jobs (=results) available in memory.
virtual int ScheduleFrame(void *imgptr, int pitch, int width, int height, ROIPosition *positions, int numROI, QTRK_PixelDataType pdt, const LocalizationJob *jobInfo)
Schedule an entire frame at once, allowing for further optimizations.
virtual void BuildLUT(void *data, int pitch, QTRK_PixelDataType pdt, int plane, vector2f *known_pos=0)=0
Add a new lookup table plane.
CDLL_EXPORT void DLL_CALLCONV QTrkGetComputedConfig(QueuedTracker *qtrk, QTrkComputedConfig *cfg)
virtual void GetRadialZLUTSize(int &count, int &planes, int &radialsteps)=0
Get the dimensions of the radial lookup table data.
virtual void Flush()=0
Stop waiting for more jobs to do, and just process the current batch.
Struct used to define the top-left corner position of an ROI within a frame. ROI is [ x ...
QueuedTracker * CreateQueuedTracker(const QTrkComputedConfig &cc)
Helper function to create a QueuedTracker instance.
virtual void GetRadialZLUT(float *dst)=0
Get the radial lookup tables used for z tracking.
Structure for job results.
CDLL_EXPORT void DLL_CALLCONV QTrkFinalizeLUT(QueuedTracker *qtrk)
CDLL_EXPORT int DLL_CALLCONV QTrkFetchResults(QueuedTracker *qtrk, LocalizationResult *results, int maxResults)
CDLL_EXPORT void DLL_CALLCONV QTrkClearResults(QueuedTracker *qtrk)
CDLL_EXPORT QueuedTracker *DLL_CALLCONV QTrkCreateInstance(QTrkSettings *cfg)
Create a QueuedTracker instance and return a pointer to it.
CDLL_EXPORT void DLL_CALLCONV QTrkSetLocalizationMode(QueuedTracker *qtrk, LocMode_t locType)
Select which algorithm is to be used.
Structure for the settings used by the algorithms implemented in QueuedTracker.
virtual void FinalizeLUT()=0
Finalize the lookup tables in memory.
virtual void SetLocalizationMode(LocMode_t locType)=0
Select which algorithm is to be used.
virtual void SetRadialZLUT(float *data, int count, int planes)=0
Set the radial lookup tables to be used for z tracking.
virtual std::string GetWarnings()
Get a report of encountered errors.
CDLL_EXPORT int DLL_CALLCONV QTrkGetResultCount(QueuedTracker *qtrk)
CDLL_EXPORT void DLL_CALLCONV QTrkFlush(QueuedTracker *qtrk)
CDLL_EXPORT void DLL_CALLCONV QTrkGetWarnings(QueuedTracker *qtrk, char *dst, int maxStrLen)
virtual bool IsIdle()=0
Test to see if the tracker is idle.
virtual int GetQueueLength(int *maxQueueLen=0)=0
Get the lengths of the queue of jobs to be handled.
CDLL_EXPORT int DLL_CALLCONV QTrkScheduleFrame(QueuedTracker *qtrk, void *imgptr, int pitch, int width, int height, ROIPosition *positions, int numROI, QTRK_PixelDataType pdt, const LocalizationJob *jobInfo)
virtual void ScheduleLocalization(void *data, int pitch, QTRK_PixelDataType pdt, const LocalizationJob *jobInfo)=0
Add a job to the queue to be processed. A job entails running the required algorithms on a single reg...
QTrkComputedConfig cfg
The settings used by this instance of QueuedTracker.
CDLL_EXPORT int DLL_CALLCONV QTrkGetQueueLength(QueuedTracker *qtrk, int *maxQueueLen)
CDLL_EXPORT void DLL_CALLCONV QTrkGetProfileReport(QueuedTracker *qtrk, char *dst, int maxStrLen)
QTRK_PixelDataType
Flags indicating the data type of image data.
virtual std::string GetProfileReport()
Get the output of performance profiling.
CDLL_EXPORT void DLL_CALLCONV QTrkFreeInstance(QueuedTracker *qtrk)
Free a QueuedTracker instance.
CDLL_EXPORT void DLL_CALLCONV QTrkBuildLUT(QueuedTracker *qtrk, void *data, int pitch, QTRK_PixelDataType pdt, bool imageLUT, int plane)
Structure for derived settings computed from base settings in QTrkSettings.
CDLL_EXPORT void DLL_CALLCONV QTrkScheduleLocalization(QueuedTracker *qtrk, void *data, int pitch, QTRK_PixelDataType pdt, const LocalizationJob *jobInfo)
Add a job to the queue to be processed. A job entails running the required algorithms on a single reg...
CDLL_EXPORT void DLL_CALLCONV QTrkSetRadialZLUT(QueuedTracker *qtrk, float *data, int count, int planes, float *zcmp)
CDLL_EXPORT void DLL_CALLCONV QTrkGetRadialZLUTSize(QueuedTracker *qtrk, int *count, int *planes, int *radialsteps)
CDLL_EXPORT bool DLL_CALLCONV QTrkIsIdle(QueuedTracker *qtrk)
virtual int FetchResults(LocalizationResult *results, int maxResults)=0
Fetch available results.
virtual void ClearResults()=0
Clear results.
Abstract tracker interface, implemented by QueuedCUDATracker and QueuedCPUTracker.
Structure for region of interest metadata.
CDLL_EXPORT void DLL_CALLCONV QTrkGetRadialZLUT(QueuedTracker *qtrk, float *dst)