diff --git a/file/include/logbook/logbook.hpp b/file/include/logbook/logbook.hpp index cb4d856..9c2eb09 100644 --- a/file/include/logbook/logbook.hpp +++ b/file/include/logbook/logbook.hpp @@ -99,9 +99,8 @@ namespace file { std::ifstream in(BASE_DIRECTORY LOGBOOK, std::ifstream::binary); - // File Header std::string ident = readString(in, 5); - if (ident.compare("VGAL") != 0) { + if (ident.compare(LOGBOOK_HEADER) != 0) { throw std::invalid_argument("Wrong file"); } std::uint8_t version = read(in); @@ -129,8 +128,8 @@ namespace file inline void toFile() const { std::ofstream out(BASE_DIRECTORY LOGBOOK, std::fstream::binary); - char header[] = {'V', 'G', 'A', 'L', '\0', 1}; - out.write(header, 6); + out.write(LOGBOOK_HEADER, 4); + out.write("\1", 1); for (const LogbookEntry &entry : this->entries) { entry.toFile(out); } diff --git a/file/include/recording/recording.hpp b/file/include/recording/recording.hpp index 37b0a60..33f8277 100644 --- a/file/include/recording/recording.hpp +++ b/file/include/recording/recording.hpp @@ -41,8 +41,8 @@ namespace file { std::ofstream out(BASE_DIRECTORY RECORDING_DIRECTORY + fileName, std::fstream::binary); - char header[] = {'V', 'G', 'A', 'R', '\0', 1}; - out.write(header, 6); + out.write(RECORDING_HEADER, 4); + out.write("\1", 1); for (const RecordingEntry &entry : this->entries) { entry.toFile(out); } diff --git a/file/include/simdata/simDatabase.hpp b/file/include/simdata/simDatabase.hpp index 75a28bc..b43d642 100644 --- a/file/include/simdata/simDatabase.hpp +++ b/file/include/simdata/simDatabase.hpp @@ -88,9 +88,8 @@ namespace file { std::ifstream in(BASE_DIRECTORY SIMDATABASE, std::ifstream::binary); - // File Header std::string ident = readString(in, 5); - if (ident.compare("VGAS") != 0) { + if (ident.compare(SIMDATABASE_HEADER) != 0) { throw std::invalid_argument("Wrong file"); } std::uint8_t version = read(in); @@ -133,9 +132,9 @@ namespace file { std::ofstream out(BASE_DIRECTORY SIMDATABASE, std::fstream::binary); - // File Header, Last member is version - std::uint8_t header[] = {'V', 'G', 'A', 'S', '\0', 1}; - out.write(reinterpret_cast(header), 6); + // File Header + out.write(SIMDATABASE_HEADER, 4); + out.write("\1", 1); // Num Airports write(out, airports.size()); // Airport diff --git a/file/php/Recording.php b/file/php/Recording.php index 5614ebd..3b95f44 100644 --- a/file/php/Recording.php +++ b/file/php/Recording.php @@ -5,7 +5,7 @@ namespace germanairlinesva_recording; class Recording { private const ident = "VGAR"; - private const header_unpack = "Z5ident/Cversion"; + private const header_unpack = "a4ident/Cversion"; private const segment_unpack = "Vtime/Saltitude/Sgroundspeed/elatitude/elongitude"; private string $file_name; @@ -122,7 +122,7 @@ class Recording throw new \InvalidArgumentException(sprintf('Argument must be a valid resource type. %s given.', gettype($file))); } - $header = unpack(Recording::header_unpack, fread($file, 6)); + $header = unpack(Recording::header_unpack, fread($file, 5)); if ($header["ident"] !== Recording::ident) { throw diff --git a/utilities/include/constants.h b/utilities/include/constants.h index 8c0f777..66609bf 100644 --- a/utilities/include/constants.h +++ b/utilities/include/constants.h @@ -19,4 +19,8 @@ #define SIMDATABASE "sim.bin" #define LOGBOOK "logbook.bin" +#define LOGBOOK_HEADER "VGAL" +#define RECORDING_HEADER "VGAR" +#define SIMDATABASE_HEADER "VGAS" + #endif \ No newline at end of file