Initial
This commit is contained in:
107
aladin/information.cpp
Normal file
107
aladin/information.cpp
Normal file
@@ -0,0 +1,107 @@
|
||||
#include <aladin/information.hpp>
|
||||
#include <common/file.hpp>
|
||||
|
||||
Information::Information()
|
||||
{
|
||||
mComputerType=0;
|
||||
mExtraInfo1=0;
|
||||
}
|
||||
|
||||
Information::~Information()
|
||||
{
|
||||
}
|
||||
|
||||
bool Information::readFrom(RawData &array)
|
||||
{
|
||||
try
|
||||
{
|
||||
mComputerType=array[0x7BC];
|
||||
mExtraInfo1=array[0x7D2];
|
||||
}
|
||||
catch(ArrayIndexOutOfBoundsException exception)
|
||||
{
|
||||
::OutputDebugString(exception.toString()+String("\n"));
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
bool Information::readFrom(File &inFile)
|
||||
{
|
||||
if(!inFile.isOkay())return false;
|
||||
if(!inFile.read(&mComputerType,sizeof(mComputerType)))return false;
|
||||
if(!inFile.read(&mExtraInfo1,sizeof(mExtraInfo1)))return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
bool Information::writeTo(File &outFile)
|
||||
{
|
||||
if(!outFile.isOkay())return false;
|
||||
if(!outFile.write(&mComputerType,sizeof(mComputerType)))return false;
|
||||
if(!outFile.write(&mExtraInfo1,sizeof(mExtraInfo1)))return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
Information::Model Information::getComputerType(void)const
|
||||
{
|
||||
switch(mComputerType)
|
||||
{
|
||||
case 0x40 :
|
||||
return MaresGenius;
|
||||
case 0x34 :
|
||||
return AladinAirZ;
|
||||
case 0x44 :
|
||||
return AladinAirZ;
|
||||
case 0xA4 :
|
||||
return AladinAirZO2;
|
||||
case 0xF4 :
|
||||
return AladinAirXNitrox;
|
||||
case 0x48 :
|
||||
return SpiroMonitor3Air;
|
||||
case 0x1C :
|
||||
return AladinAirTwin;
|
||||
case 0x1D :
|
||||
case 0x3D :
|
||||
return SpiroMonitor2Plus;
|
||||
case 0x1E :
|
||||
case 0x3E :
|
||||
return AladinSportPlus;
|
||||
case 0x1F :
|
||||
case 0x3F :
|
||||
return AladinPro;
|
||||
case 0xFF :
|
||||
return AladinProUltra;
|
||||
default :
|
||||
return Unknown;
|
||||
}
|
||||
}
|
||||
|
||||
String Information::getComputerTypeString(void)const
|
||||
{
|
||||
switch(getComputerType())
|
||||
{
|
||||
case MaresGenius :
|
||||
return "Mares Genius";
|
||||
case AladinAirZ :
|
||||
return "Aladin Air Z/Aladin Air X";
|
||||
case AladinAirZO2 :
|
||||
return "Aladin Air Z O2/Aladin Air X O2";
|
||||
case AladinAirXNitrox :
|
||||
return "Aladin Air X Nitrox";
|
||||
case SpiroMonitor3Air :
|
||||
return "Spiro Monitor 3 Air";
|
||||
case AladinAirTwin :
|
||||
return "Aladin Air Twin/Aladin Air";
|
||||
case SpiroMonitor2Plus :
|
||||
return "Spiro Monitor 2 Plus";
|
||||
case AladinSportPlus :
|
||||
return "Aladin Sport Plus/Aladin Sport";
|
||||
case AladinPro :
|
||||
return "Aladin Pro";
|
||||
case AladinProUltra :
|
||||
return "Aladin Pro Ultra/Aladin Pro Nitrox";
|
||||
case Unknown :
|
||||
default :
|
||||
return "Unknown";
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user