#pragma once #include #include #include #include "api/SeaBreezeWrapper.h" #include "IrisFiberSpectrometerBase.h" using namespace std; class OceanOptics_lib :public CIrisFSBase { public: OceanOptics_lib(); virtual ~OceanOptics_lib(); public: //初始化设备 //此处string为指明连接哪个ocean光谱仪的参数,可自行更换为其他c/c++标准类型 //0为无错误,不同错误请返回不同值 int Initialize(bool bIsUSBMode, ZZ_U8 ucPortNumber, std::string strDeviceName);//ok int Initialize();//ok //关闭设备 void Close();//ok //单次数据采集 int SingleShot(DataFrame &dfData); //设置曝光时间 int SetExposureTime(int iExposureTimeInMS);//ok //获取曝光时间设置 int GetExposureTime(int &iExposureTimeInMS);//ok //设置目标温度 int SetDeviceTemperature(float fTemperature);//ok //获取温度设置 int GetDeviceTemperature(float &fTemperature);//ok //获取设备信息 int GetDeviceInfo(DeviceInfo &Info);//ok //获取设备特征数据 int GetDeviceAttribute(DeviceAttribute &Attr);//ok private: int m_iSpectralmeterHandle; DeviceInfo m_deviceInfo; int m_iExposureTime; bool isSuccess(char* resultStr); static const char* get_error_string(int error); string GetDeviceType(int index); string GetSerialNumber(int index); };