File ChunkDataInference.h¶
File List > include > ChunkDataInference.h
Go to the documentation of this file
//=============================================================================
// Copyright (c) 2026 FLIR Integrated Imaging Solutions, Inc. All Rights Reserved.
//
// This software is the confidential and proprietary information of FLIR
// Integrated Imaging Solutions, Inc. ("Confidential Information"). You
// shall not disclose such Confidential Information and shall use it only in
// accordance with the terms of the license agreement you entered into
// with FLIR Integrated Imaging Solutions, Inc. (FLIR).
//
// FLIR MAKES NO REPRESENTATIONS OR WARRANTIES ABOUT THE SUITABILITY OF THE
// SOFTWARE, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
// IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
// PURPOSE, OR NON-INFRINGEMENT. FLIR SHALL NOT BE LIABLE FOR ANY DAMAGES
// SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR DISTRIBUTING
// THIS SOFTWARE OR ITS DERIVATIVES.
//=============================================================================
#ifndef FLIR_SPINNAKER_CHUNK_DATA_INFERENCE_H
#define FLIR_SPINNAKER_CHUNK_DATA_INFERENCE_H
#include "SpinGenApi/GCTypes.h"
#include "SpinnakerPlatform.h"
#include "CameraDefs.h"
namespace Spinnaker
{
enum InferenceBoxType
{
INFERENCE_BOX_TYPE_RECTANGLE = 0,
INFERENCE_BOX_TYPE_CIRCLE = 1,
INFERENCE_BOX_TYPE_ROTATED_RECTANGLE = 2
};
typedef struct
{
int16_t topLeftXCoord;
int16_t topLeftYCoord;
int16_t bottomRightXCoord;
int16_t bottomRightYCoord;
} InferenceBoxRect;
typedef struct
{
int16_t centerXCoord;
int16_t centerYCoord;
int16_t radius;
} InferenceBoxCircle;
typedef struct
{
int16_t topLeftXCoord;
int16_t topLeftYCoord;
int16_t bottomRightXCoord;
int16_t bottomRightYCoord;
short rotationAngle;
} InferenceBoxRotatedRect;
typedef struct InferenceBoundingBox
{
InferenceBoxType boxType;
int16_t classId;
float32_t confidence;
InferenceBoxRect rect;
InferenceBoxCircle circle;
InferenceBoxRotatedRect rotatedRect;
} InferenceBoundingBox;
class SPINNAKER_API InferenceBoundingBoxResult
{
friend class ChunkDataImpl;
public:
InferenceBoundingBoxResult();
~InferenceBoundingBoxResult();
InferenceBoundingBoxResult(const uint8_t* data, const int64_t lengthInBytes);
InferenceBoundingBoxResult(const InferenceBoundingBoxResult& other);
InferenceBoundingBoxResult& operator=(const InferenceBoundingBoxResult& rhs);
int8_t GetVersion() const;
int16_t GetBoxCount() const;
int8_t GetBoxSize() const;
InferenceBoundingBox GetBoxAt(const uint16_t index) const;
private:
struct InferenceBoundingBoxResultData;
InferenceBoundingBoxResultData* m_pData;
};
} // namespace Spinnaker
#endif // FLIR_SPINNAKER_CHUNK_DATA_UTILITY_INFERENCE_H