-
Notifications
You must be signed in to change notification settings - Fork 11
Expand file tree
/
Copy pathdefaultcameraparameternames.cpp
More file actions
55 lines (47 loc) · 2.7 KB
/
defaultcameraparameternames.cpp
File metadata and controls
55 lines (47 loc) · 2.7 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
#include "defaultcameraparameternames.h"
#include<defaults.h>
#include<QDebug>
#include<usoundutils.h>
using namespace std;
DefaultCameraParameterNames* DefaultCameraParameterNames::cameraSettings=nullptr;
DefaultCameraParameterNames *DefaultCameraParameterNames::getInstance()
{
if(cameraSettings==nullptr){
cameraSettings = new DefaultCameraParameterNames();
cameraSettings->loadSettings();
}
return cameraSettings;
}
void DefaultCameraParameterNames::loadSettings()
{
try {
settings = new QSettings("CameraParameters.ini", QSettings::IniFormat);
QStringList cameraMakes = settings->childGroups();
for(int i=0;i<cameraMakes.size();i++)
{
qDebug()<< "Registering camera parameters for make: "<< cameraMakes.at(i);
CameraParameters cameraParameters;
settings->beginGroup(cameraMakes.at(i));
cameraParameters.setEXPOSURETIME(settings->value("EXPOSURETIME").toString().toUtf8().constData());
cameraParameters.setAUTOEXPOSURE(settings->value("AUTOEXPOSURE").toString().toUtf8().constData());
cameraParameters.setGAMMA(settings->value("GAMMA").toString().toUtf8().constData());
cameraParameters.setACQUISITIONFRAMERATE(settings->value("ACQUISITIONFRAMERATE").toString().toUtf8().constData());
cameraParameters.setACQUISITIONFRAMERATEENABLE(settings->value("ACQUISITIONFRAMERATEENABLE").toString().toUtf8().constData());
cameraParameters.setRESULTINGFRAMERATE(settings->value("RESULTINGFRAMERATE").toString().toUtf8().constData());
cameraParameters.setGAIN(settings->value("GAIN").toString().toUtf8().constData());
cameraParameters.setAUTOGAIN(settings->value("AUTOGAIN").toString().toUtf8().constData());
cameraParameters.setHUE(settings->value("HUE").toString().toUtf8().constData());
cameraParameters.setSATURATION(settings->value("SATURATION").toString().toUtf8().constData());
cameraParameters.setBRIGHTNESS(settings->value("BRIGHTNESS").toString().toUtf8().constData());
cameraParameters.setCONTRAST(settings->value("CONTRAST").toString().toUtf8().constData());
cameraParameters.setMONOCHROME(settings->value("MONOCHROME").toString().toUtf8().constData());
cameraParameters.setRGB(settings->value("RGB").toString().toUtf8().constData());
settings->endGroup();
defaultCameraParameterNames.insert(cameraMakes.at(i), cameraParameters);
}
} catch (std::exception &e) {
qCritical() << e.what();
qCritical() << "Failed to load configuration from INI file. Using defaults!";
throw CameraParameterNamesExceptioDefaultn();
}
}