完善函数返回值

This commit is contained in:
2021-12-06 09:26:32 +08:00
parent fae1a5e462
commit 6334ea9e41
3 changed files with 303 additions and 98 deletions

View File

@ -4,61 +4,146 @@
#include "api/seabreezeapi/SeaBreezeAPI.h"
#include <iostream>
#include <fstream>
#include "library.h"
int main()
{
std::cout << "Hello, World!" << std::endl;
//
// int ret;
// OceanOptics_lib fiberImager;
//// fiberImager.Initialize(true,10,"FLMS15814");//QEP02975 FLMS15814
// fiberImager.Initialize();
// ret = fiberImager.SetDeviceTemperature(-1);
// if (ret)
// {
// std::cout << "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!" << std::endl;
// }
// else
// {
// std::cout << "<22><><EFBFBD><EFBFBD><EFBFBD>¶ȳɹ<C8B3><C9B9><EFBFBD>" << std::endl;
// }
//
//
// ret = fiberImager.SetExposureTime(10000);
// if (ret)
// {
// std::cout << "<22><><EFBFBD><EFBFBD><EFBFBD>ع<EFBFBD>ʱ<EFBFBD><CAB1>ʧ<EFBFBD><CAA7>!" << std::endl;
// }
//
// int exposureTime;
// ret = fiberImager.GetExposureTime(exposureTime);
// if (ret)
// {
// std::cout << "<22><>ȡ<EFBFBD>ع<EFBFBD>ʱ<EFBFBD><CAB1>ʧ<EFBFBD><CAA7>!" << std::endl;
// }
// else
// {
// std::cout << "<22><>ȡ<EFBFBD><C8A1><EFBFBD>ع<EFBFBD>ʱ<EFBFBD><CAB1>Ϊ<EFBFBD><CEAA>" << exposureTime << std::endl;
// }
//
//
//
// ret = fiberImager.SetDeviceTemperature(-8);
//
// float fTemperature;
// ret = fiberImager.GetDeviceTemperature(fTemperature);
// if (ret)
// {
// std::cout << "<22><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!" << std::endl;
// }
// else
// {
// std::cout << "<22><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>" << fTemperature << std::endl;
// }
//
//
// DeviceInfo Info;
// ret = fiberImager.GetDeviceInfo(Info);
// if (ret)
// {
// std::cout << "<22><>ȡDeviceInfoʧ<6F><CAA7>!" << std::endl;
// }
// else
// {
// std::cout << "<22><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>" << Info.strPN << std::endl;
// std::cout << "<22><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>SNΪ<4E><CEAA>" << Info.strSN << std::endl;
// }
//
//
//
// DeviceAttribute Attr;
// ret = fiberImager.GetDeviceAttribute(Attr);
// if (ret)
// {
// std::cout << "<22><>ȡDeviceAttributeʧ<65><CAA7>!" << std::endl;
// }
// else
// {
// std::cout << "<22><>ȡ<EFBFBD>IJ<EFBFBD><C4B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>" << Attr.iPixels << std::endl;
// std::cout << "<22><>ȡ<EFBFBD>IJ<EFBFBD><C4B2><EFBFBD>Ϊ<EFBFBD><CEAA>" << std::endl;
// for(int i=0;i<Attr.iPixels;i++)
// {
// std::cout << Attr.fWaveLengthInNM[i] << ",";
// }
// std::cout << std::endl;
// std::cout << "<22><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ع<EFBFBD>ʱ<EFBFBD><CAB1>Ϊ<EFBFBD><CEAA>" << Attr.iMaxIntegrationTimeInMS << std::endl;
// std::cout << "<22><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>С<EFBFBD>ع<EFBFBD>ʱ<EFBFBD><CAB1>Ϊ<EFBFBD><CEAA>" << Attr.iMinIntegrationTimeInMS << std::endl;
// }
//
//
// DataFrame dfData;
// ret = fiberImager.SingleShot(dfData);
// if (ret)
// {
// std::cout << "<22>ɼ<EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!" << std::endl;
// }
// else
// {
// string fileName = "integratingSphereSpectral.csv";
// std::ofstream outfile(fileName.c_str());
//
// for (int i = 0; i < Attr.iPixels; i++)
// {
// outfile << Attr.fWaveLengthInNM[i] << "," << dfData.usData[i] << std::endl;
// }
//
// outfile.close();
//
//
// std::cout << "<22><>ȡ<EFBFBD><C8A1>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>" << std::endl;
// for(int i=0;i<Attr.iPixels;i++)
// {
// std::cout << dfData.usData[i] << ",";
// }
// std::cout << std::endl;
// std::cout << "<22><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>" << dfData.fTemperature << std::endl;
// std::cout << "<22><>ȡ<EFBFBD><C8A1><EFBFBD>ع<EFBFBD>ʱ<EFBFBD><CAB1>Ϊ<EFBFBD><CEAA>" << dfData.usExposureTimeInMS << std::endl;
// }
//---------------------------------------------------------------------------------------------------------------------------------------------------
int ret;
OceanOptics_lib fiberImager;
fiberImager.Initialize(true,10,"FLMS15814");//QEP02975 FLMS15814
fiberImager.SetExposureTime(5000);
int exposureTime;
fiberImager.GetExposureTime(exposureTime);
std::cout << "<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD>ع<EFBFBD>ʱ<EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD>" << exposureTime << std::endl;
fiberImager.Initialize(true,10,"QEP02975");//QEP02975 FLMS15814
// fiberImager.Initialize();
fiberImager.SetDeviceTemperature(-8);
float fTemperature;
fiberImager.GetDeviceTemperature(fTemperature);
std::cout << "<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD>" << fTemperature << std::endl;
DeviceInfo Info;
fiberImager.GetDeviceInfo(Info);
std::cout << "<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD>" << Info.strPN << std::endl;
std::cout << "<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>SNΪ<EFBFBD><EFBFBD>" << Info.strSN << std::endl;
ret = fiberImager.SetExposureTime(10000);
if (ret)
{
std::cout << "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ع<EFBFBD>ʱ<EFBFBD><EFBFBD>ʧ<EFBFBD><EFBFBD>!" << std::endl;
}
DeviceAttribute Attr;
fiberImager.GetDeviceAttribute(Attr);
std::cout << "<EFBFBD><EFBFBD>ȡ<EFBFBD>IJ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD>" << Attr.iPixels << std::endl;
std::cout << "<EFBFBD><EFBFBD>ȡ<EFBFBD>IJ<EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD>" << std::endl;
for(int i=0;i<Attr.iPixels;i++)
{
std::cout << Attr.fWaveLengthInNM[i] << ",";
}
std::cout << std::endl;
std::cout << "<EFBFBD><EFBFBD>ȡ<EFBFBD>IJ<EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD>" << Attr.fWaveLengthInNM << std::endl;
std::cout << "<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ع<EFBFBD>ʱ<EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD>" << Attr.iMaxIntegrationTimeInMS << std::endl;
std::cout << "<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>С<EFBFBD>ع<EFBFBD>ʱ<EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD>" << Attr.iMinIntegrationTimeInMS << std::endl;
ret = fiberImager.GetDeviceAttribute(Attr);
DataFrame dfData;
fiberImager.SingleShot(dfData);
std::cout << "<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD>" << std::endl;
for(int i=0;i<Attr.iPixels;i++)
{
std::cout << dfData.usData[i] << ",";
}
std::cout << std::endl;
std::cout << "<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD>" << dfData.fTemperature << std::endl;
std::cout << "<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD>ع<EFBFBD>ʱ<EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD>" << dfData.usExposureTimeInMS << std::endl;
ret = fiberImager.SingleShot(dfData);
fiberImager.Close();
@ -66,6 +151,9 @@ int main()
}
//
//
//int main()
//{
// int number_of_devices;
@ -79,6 +167,8 @@ int main()
// char nameBuffer[80];
// int number_of_spectrometers;
// long *spectrometer_ids = 0;
// int length;
// double *doubleBuffer = 0;
//
//
// sbapi_initialize();
@ -95,29 +185,35 @@ int main()
// printf("Getting device IDs...\n");
// device_ids = (long *)calloc(number_of_devices, sizeof(long));
//
// std::cout<<"ssss"<<device_ids[0];
//
// number_of_devices = sbapi_get_device_ids(device_ids, number_of_devices);
//
// flag = sbapi_open_device(device_ids[0], &error);
// printf("\t\tsbapi_open_device<63><65>Result is (%d) [%s]\n", flag, sbapi_get_error_string(error));
//
//
// number_of_spectrometers = sbapi_get_number_of_spectrometer_features(device_ids[0], &error);
//
// spectrometer_ids = (long *)calloc(10, sizeof(long));
//
// number_of_spectrometers = sbapi_get_spectrometer_features(2, &error,
// spectrometer_ids, 10);
//
// for(int i=0;i<10;i++)
// {
// std::cout<<std::endl;
// std::cout<<"ssss:"<<spectrometer_ids[i]<<std::endl;
// }
//
// printf("\t\t\tResult is %d [%s]\n", number_of_spectrometers,
// sbapi_get_error_string(error));
// printf("\t\t\tsbapi_get_number_of_spectrometer_features<65><73>Result is %d [%s]\n", number_of_spectrometers, sbapi_get_error_string(error));
// spectrometer_ids = (long *)calloc(number_of_spectrometers, sizeof(long));
// number_of_spectrometers = sbapi_get_spectrometer_features(device_ids[0], &error, spectrometer_ids, 10);
// printf("\t\t\tsbapi_get_spectrometer_features<65><73>Result is %d [%s]\n", number_of_spectrometers, sbapi_get_error_string(error));
//
//
// sbapi_spectrometer_set_integration_time_micros(device_ids[0], spectrometer_ids[0], &error, 10000000);
// printf("\t\t\t\tset_integration_time<6D><65>Result is [%s]\n", sbapi_get_error_string(error));
//
//
// printf("\t\t\tGetting spectrum length\n");
// length = sbapi_spectrometer_get_formatted_spectrum_length(device_ids[0], spectrometer_ids[0], &error);
// printf("\t\t\t\tResult is %d [%s]\n", length, sbapi_get_error_string(error));
// doubleBuffer = (double *)calloc(length, sizeof(double));
//
//
// printf("\t\t\tGetting spectrum111111111111111111111111111111111111111111111111111\n");
// length = sbapi_spectrometer_get_formatted_spectrum(device_ids[0],spectrometer_ids[0], &error, doubleBuffer, length);
// printf("\t\t\t\tResult is %d [%s]\n", length, sbapi_get_error_string(error));
//
//
// printf("\t\t\tGetting spectrum222222222222222222222222222222222222222222222222222222222\n");
//
//
// std::cout<<"ssss:"<<error<<std::endl;
//}