]> Shamusworld >> Repos - architektonas/blob - src/fileio.h
Changes to make containers behave like a first-class object.
[architektonas] / src / fileio.h
1 #ifndef __FILEIO_H__
2 #define __FILEIO_H__
3
4 #include <stdio.h>
5 #include "structs.h"
6
7 // NB: The methods in this class are all static, so there's no need to
8 //     instantiate an object of this type to use its functions.
9
10 class FileIO
11 {
12         public:
13                 static bool SaveAtnsFile(FILE *, Container *);
14                 static bool LoadAtnsFile(FILE *, Container *);
15                 static void ResetLayerVectors(void);
16
17         private:
18                 static bool LoadVersion1_0(FILE *, Container *);
19                 static bool LoadVersion1_1(FILE *, Container *);
20                 static bool LoadVersion1_2(FILE *, Container *);
21 //              static bool GetObjectFromFile(FILE *, Object *, Object **, int *);
22                 static Object * GetObjectFromFile(FILE *, bool extended = false);
23                 static bool WriteObjectToFile(FILE *, Object *);
24
25                 static int objectFileType;
26 };
27
28 #endif  // __FILEIO_H__
29