PreVerify/lib/PCBInspector/include/2_PCBOfflineDataLoader/OfflineData/PCBOfflineData.h

38 lines
1.0 KiB
C
Raw Normal View History

2024-09-09 19:18:28 +08:00
#pragma once
#include <memory>
#include <opencv2/core.hpp>
#include "PCBOfflineDataRef.h"
class PCBOfflineDataImpl;
template class __declspec(dllexport) std::shared_ptr<PCBOfflineDataImpl>;
class __declspec(dllexport) PCBOfflineData
{
public:
// 构造时指定 相机编号 料号 层号
PCBOfflineData(const char* datasetRoot, const char* job, const char* layer);
~PCBOfflineData();
// 禁用拷贝构造和赋值
PCBOfflineData(const PCBOfflineData&) = delete;
PCBOfflineData& operator=(const PCBOfflineData&) = delete;
// 加载特定功能的离线数据资料
PCBOfflineDataRef getOfflineData4Classify(int cameraIndex);
PCBOfflineDataRef getOfflineData4Inspect(int cameraIndex);
PCBOfflineDataRef getOfflineData4TemporarilyInspect(int cameraIndex, const char* temporarilyConfigPath);
PCBOfflineDataRef getOfflineData4Learn(int cameraIndex);
PCBOfflineDataRef getOfflineData4Debug(int cameraIndex);
private:
std::shared_ptr<PCBOfflineDataImpl> pcbOfflineDataImpl = nullptr;
};