Pārlūkot izejas kodu

Added info about IO module, implemented destructor, which calls DeInit

Ivan Arkhipov 6 gadi atpakaļ
vecāks
revīzija
9585b0fdb6

+ 1 - 0
include/DatSubsystems/DatFileSystem.h

@@ -29,6 +29,7 @@ namespace LOTRO_DAT {
      * \date 30.06.2018
      * Класс для работы с внутренними файлами в dat-контейнере. Позволяет найти и извлечь данные необходимого файла
      * или изменить информацию о нём
+     * \warning Объекты этого класса не должны создаваться отдельно! Созданием и управлением ими занимается класс DatFile
      */
 
     class DatFileSystem {

+ 10 - 1
include/DatSubsystems/DatIO.h

@@ -18,13 +18,22 @@ namespace LOTRO_DAT {
 
     class SubFile;
 
+    /*!
+     * \brief Модуль ввода/вывода
+     * \author Gi1dor
+     * \date 30.06.2018
+     * Класс для работы с вводом-выводом данных в dat-контейнере. Предоставляет функции чтения/записи данных, а также
+     * информацию об основных параметрах dat файла
+     * информацию об основных параметрах dat файла
+     * \warning Объекты этого класса не должны создаваться отдельно! Созданием и управлением ими занимается класс DatFile
+     */
 
     class DatIO {
     public:
         DatIO() = delete;
         DatIO(const DatIO &other) = delete;
         DatIO& operator=(const DatIO &other) = delete;
-        ~DatIO() = default;
+        ~DatIO();
 
         explicit DatIO(DatFile *datFilePtr);
 

+ 6 - 2
src/DatSubsystems/DatIO.cpp

@@ -28,11 +28,14 @@ namespace LOTRO_DAT {
      * \param[in] datFile Указатель на объект управляющего класса DatFile
      */
 
-    DatIO::DatIO(DatFile *datFile) : dat(datFile), file_handler_(nullptr), filename_(),
-                                             actual_dat_size_(0) {
+    DatIO::DatIO(DatFile *datFile) : dat(datFile), file_handler_(nullptr), filename_(), actual_dat_size_(0) {
     }
 
 
+    DatIO::~DatIO() {
+        DeInit();
+    }
+
     //------------------------------------------------//
     // INIT SECTION
     //------------------------------------------------//
@@ -346,5 +349,6 @@ namespace LOTRO_DAT {
         fprintf(file, "root_dir_offset = %lld\n", root_directory_offset);
         fprintf(file, "free_dat_size = %lld\n", free_dat_size);
     }
+
 }
 }