subsurface/subsurface-core/devicedetails.h
Tomaz Canabrava f25dce8511 Create a constructor with default parameters for some structs
Structs and classes in C++ are basically the same thing and we want to
create a few zero-initialized values for some of them; Sadly, C++ doesn't
have the nice static struct initialization that C has.

One way to deal with that is to create a constructor and pass default
values to it, another is lambda-initialization, but we don't use C++11,
yet.

Since we initializate stuff on the constructor, we don't need to
re-initializate things again on the initialization list (which is also why
I removed the QStrings from the initialization lists, they are
automatically initialized to empty)

Signed-off-by: Tomaz Canabrava <tomaz.canabrava@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2016-03-07 11:13:11 -08:00

104 lines
1.9 KiB
C++

#ifndef DEVICEDETAILS_H
#define DEVICEDETAILS_H
#include <QObject>
#include <QDateTime>
#include "libdivecomputer.h"
struct gas {
unsigned char oxygen;
unsigned char helium;
unsigned char type;
unsigned char depth;
gas(unsigned char oxygen = 0, unsigned char helium = 0, unsigned char type = 0, unsigned char depth = 0);
};
struct setpoint {
unsigned char sp;
unsigned char depth;
setpoint(unsigned char sp = 0, unsigned char depth = 0);
};
class DeviceDetails : public QObject
{
Q_OBJECT
public:
explicit DeviceDetails(QObject *parent = 0);
device_data_t *data;
QString serialNo;
QString firmwareVersion;
QString customText;
QString model;
bool syncTime;
gas gas1;
gas gas2;
gas gas3;
gas gas4;
gas gas5;
gas dil1;
gas dil2;
gas dil3;
gas dil4;
gas dil5;
setpoint sp1;
setpoint sp2;
setpoint sp3;
setpoint sp4;
setpoint sp5;
bool setPointFallback;
int ccrMode;
int calibrationGas;
int diveMode;
int decoType;
int ppO2Max;
int ppO2Min;
int futureTTS;
int gfLow;
int gfHigh;
int aGFLow;
int aGFHigh;
int aGFSelectable;
int saturation;
int desaturation;
int lastDeco;
int brightness;
int units;
int samplingRate;
int salinity;
int diveModeColor;
int language;
int dateFormat;
int compassGain;
int pressureSensorOffset;
bool flipScreen;
bool safetyStop;
int maxDepth;
int totalTime;
int numberOfDives;
int altitude;
int personalSafety;
int timeFormat;
bool lightEnabled;
int light;
bool alarmTimeEnabled;
int alarmTime;
bool alarmDepthEnabled;
int alarmDepth;
int leftButtonSensitivity;
int rightButtonSensitivity;
int bottomGasConsumption;
int decoGasConsumption;
bool modWarning;
bool dynamicAscendRate;
bool graphicalSpeedIndicator;
bool alwaysShowppO2;
int tempSensorOffset;
unsigned safetyStopLength;
unsigned safetyStopStartDepth;
unsigned safetyStopEndDepth;
unsigned safetyStopResetDepth;
};
#endif // DEVICEDETAILS_H