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; }
|
|
};
|