#pragma once #include #include #include "PCBOfflineDataRef.h" class PCBOfflineDataImpl; template class __declspec(dllexport) std::shared_ptr; 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 = nullptr; };