Initial
This commit is contained in:
126
aladin/profiledata.hpp
Normal file
126
aladin/profiledata.hpp
Normal file
@@ -0,0 +1,126 @@
|
||||
#ifndef _ALADIN_PROFILEDATA_HPP_
|
||||
#define _ALADIN_PROFILEDATA_HPP_
|
||||
#ifndef _COMMON_WINDOWS_HPP_
|
||||
#include <common/windows.hpp>
|
||||
#endif
|
||||
#ifndef _COMMON_STRING_HPP_
|
||||
#include <common/string.hpp>
|
||||
#endif
|
||||
#ifndef _COMMON_FILE_HPP_
|
||||
#include <common/file.hpp>
|
||||
#endif
|
||||
|
||||
class ProfileData
|
||||
{
|
||||
public:
|
||||
typedef enum Warning{TransmitErrorAirPressure=0x20,WorkTooHard=0x10,CeilingViolationOfDeco=0x08,AscentTooFast=0x04,RemainingBottomTimeTooShort=0x02,DecoStop=0x01,None=0};
|
||||
ProfileData(void);
|
||||
ProfileData(int depth,int stageTime,int warning);
|
||||
bool operator==(const ProfileData &profileData)const;
|
||||
bool writeTo(File &outFile);
|
||||
bool readFrom(File &inFile);
|
||||
virtual ~ProfileData();
|
||||
int getDepth(void)const;
|
||||
void setDepth(int depth);
|
||||
int getStageTime(void)const;
|
||||
void setStageTime(int stageTime);
|
||||
Warning getWarning(void)const;
|
||||
String getWarningString(void)const;
|
||||
void setWarning(Warning warning);
|
||||
String toString(void)const;
|
||||
private:
|
||||
int mDepth;
|
||||
int mStageTime;
|
||||
int mWarning;
|
||||
};
|
||||
|
||||
inline
|
||||
ProfileData::ProfileData()
|
||||
: mDepth(0), mStageTime(0), mWarning(None)
|
||||
{
|
||||
}
|
||||
|
||||
inline
|
||||
ProfileData::ProfileData(int depth,int stageTime,int warning)
|
||||
: mDepth(depth), mStageTime(stageTime), mWarning(warning)
|
||||
{
|
||||
}
|
||||
|
||||
inline
|
||||
ProfileData::~ProfileData()
|
||||
{
|
||||
}
|
||||
|
||||
inline
|
||||
bool ProfileData::operator==(const ProfileData &profileData)const
|
||||
{
|
||||
return (mDepth==profileData.mDepth&&mStageTime==profileData.mStageTime&&mWarning==profileData.mWarning);
|
||||
}
|
||||
|
||||
inline
|
||||
String ProfileData::toString(void)const
|
||||
{
|
||||
String str;
|
||||
|
||||
str+=String("Depth:")+String().fromInt(getDepth())+String(" ");
|
||||
str+=String("StageTime:")+String().fromInt(getStageTime())+String(" ");
|
||||
str+=String("Warning:")+String().fromInt(getWarning());
|
||||
return str;
|
||||
}
|
||||
|
||||
inline
|
||||
bool ProfileData::readFrom(File &inFile)
|
||||
{
|
||||
if(!inFile.isOkay())return false;
|
||||
if(!inFile.read(&mDepth,sizeof(mDepth)))return false;
|
||||
if(!inFile.read(&mStageTime,sizeof(mStageTime)))return false;
|
||||
if(!inFile.read(&mWarning,sizeof(mWarning)))return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
inline
|
||||
bool ProfileData::writeTo(File &outFile)
|
||||
{
|
||||
if(!outFile.isOkay())return false;
|
||||
if(!outFile.write(&mDepth,sizeof(mDepth)))return false;
|
||||
if(!outFile.write(&mStageTime,sizeof(mStageTime)))return false;
|
||||
if(!outFile.write(&mWarning,sizeof(mWarning)))return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
inline
|
||||
int ProfileData::getDepth(void)const
|
||||
{
|
||||
return mDepth;
|
||||
}
|
||||
|
||||
inline
|
||||
void ProfileData::setDepth(int depth)
|
||||
{
|
||||
mDepth=depth;
|
||||
}
|
||||
|
||||
inline
|
||||
int ProfileData::getStageTime(void)const
|
||||
{
|
||||
return mStageTime;
|
||||
}
|
||||
|
||||
inline
|
||||
void ProfileData::setStageTime(int stageTime)
|
||||
{
|
||||
mStageTime=stageTime;
|
||||
}
|
||||
|
||||
inline
|
||||
ProfileData::Warning ProfileData::getWarning(void)const
|
||||
{
|
||||
return (Warning)mWarning;
|
||||
}
|
||||
|
||||
inline
|
||||
void ProfileData::setWarning(Warning warning)
|
||||
{
|
||||
mWarning=warning;
|
||||
}
|
||||
#endif
|
||||
Reference in New Issue
Block a user