48 lines
1023 B
C
48 lines
1023 B
C
|
#pragma once
|
|||
|
|
|||
|
#include <string>
|
|||
|
|
|||
|
|
|||
|
// 离线数据集信息
|
|||
|
struct OfflineDataInfo
|
|||
|
{
|
|||
|
int cameraIndex; // 工位号
|
|||
|
std::string job; // 料号
|
|||
|
std::string layer; // 层号
|
|||
|
std::string datasetRoot; // 数据集根目录
|
|||
|
};
|
|||
|
|
|||
|
// 离线数据集引用
|
|||
|
class __declspec(dllexport) PCBOfflineDataRef
|
|||
|
{
|
|||
|
public:
|
|||
|
enum class Type
|
|||
|
{
|
|||
|
None,
|
|||
|
Classify,
|
|||
|
Inspect,
|
|||
|
TemporarilyInspect,
|
|||
|
LearnStageOne,
|
|||
|
LearnStageTwo,
|
|||
|
LearnStageThree,
|
|||
|
Debug
|
|||
|
};
|
|||
|
|
|||
|
OfflineDataInfo info; // 信息
|
|||
|
Type type = Type::None; // 标记使用方式
|
|||
|
const void* ptr = nullptr; // 数据集指针
|
|||
|
|
|||
|
// 构造 拷贝构造
|
|||
|
PCBOfflineDataRef(const OfflineDataInfo& info, Type type, void* dataPtr);
|
|||
|
PCBOfflineDataRef(const PCBOfflineDataRef& other);
|
|||
|
|
|||
|
// 赋值运算
|
|||
|
PCBOfflineDataRef& operator=(const PCBOfflineDataRef& other);
|
|||
|
|
|||
|
// 析构
|
|||
|
~PCBOfflineDataRef();
|
|||
|
|
|||
|
// 有效判别
|
|||
|
bool valid() const { return ptr != nullptr; }
|
|||
|
};
|