39 #ifndef MAT_FILEWRITABLE
40 #define MAT_FILEWRITABLE
59 static void setPath(
char const *
const newPath);
107 virtual void clear() = 0;
FileWritable()
Gives each object a unique ID-number and filename.
Definition: FileWritable.cc:230
Definition: FileWritable.h:150
static unsigned int nObjects
The number of instantiated objects.
Definition: FileWritable.h:169
static Manager const & instance()
Definition: FileWritable.h:151
static bool active
States whether the filewriting is active.
Definition: FileWritable.h:173
char * fileName
Each object has its unique filename.
Definition: FileWritable.h:175
static void setPath(char const *const newPath)
Set the path to which the objects will be written.
Definition: FileWritable.cc:57
FileWritable & operator=(FileWritable const &)
Definition: FileWritable.cc:337
static Stats & instance()
Definition: FileWritable.h:132
static void registerObj(FileWritable *objPtr)
Definition: FileWritable.cc:353
virtual void readFromFileProt(std::ifstream &)=0
Read object from file.
static std::string getStatsTime(TypeTimeMap &theMap)
Definition: FileWritable.cc:175
static void activate()
Activate the filewriting.
Definition: FileWritable.cc:69
TypeTimeMap wallTimeWrite
Definition: FileWritable.h:136
static std::string getStatsCountCopyAndAssign()
Definition: FileWritable.cc:226
TypeTimeMap wallTimeRead
Definition: FileWritable.h:137
static char * path
The path to which files will be written.
Definition: FileWritable.h:172
virtual std::string obj_type_id() const =0
static std::string getStatsTimeWrite()
Definition: FileWritable.cc:211
static std::string getStatsTimeRead()
Definition: FileWritable.cc:214
TypeTimeMap wallTimeCopyAndAssign
Definition: FileWritable.h:138
virtual void inMemorySet(bool)=0
Make object invalid (false) via this function when object is written to file and valid (true) when ob...
void readFromFile()
Read object from file if filewrite is active.
Definition: FileWritable.cc:107
unsigned int const IDNumber
Each object has its unique ID-number.
Definition: FileWritable.h:174
ObjPtrSet obj_ptr_set
Definition: FileWritable.h:156
TypeCountMap countRead
Definition: FileWritable.h:140
Stats()
Definition: FileWritable.h:143
long int fileSize()
Return file size.
Definition: FileWritable.cc:151
static std::string getStatsFileSizes()
Definition: FileWritable.cc:387
std::map< std::string, int > TypeCountMap
Definition: FileWritable.h:127
Write and read objects to/from file.
Definition: FileWritable.h:54
virtual ~FileWritable()
Removes file, if any.
Definition: FileWritable.cc:252
static void unRegisterObj(FileWritable *objPtr)
Definition: FileWritable.cc:361
static Manager & instance_prot()
Definition: FileWritable.h:159
TypeCountMap countCopyAndAssign
Definition: FileWritable.h:141
void writeToFile()
Write object to file if filewrite is active.
Definition: FileWritable.cc:76
static std::string getStatsCountRead()
Definition: FileWritable.cc:223
bool isOnFile()
Check if object is on file.
Definition: FileWritable.h:87
Definition: FileWritable.h:130
static std::string getStatsTimeCopyAndAssign()
Definition: FileWritable.cc:217
virtual void writeToFileProt(std::ofstream &) const =0
Write object to file.
TypeCountMap countWrite
Definition: FileWritable.h:139
static std::string writeAndReadAll()
Definition: FileWritable.cc:368
bool objectIsOnFile
States whether the object is on file or not.
Definition: FileWritable.h:176
static void resetStats()
Definition: FileWritable.cc:167
static std::string getStatsCountWrite()
Definition: FileWritable.cc:220
virtual void clear()=0
Release memory for the information written to file.
static std::string getStatsCount(TypeCountMap &theMap)
Definition: FileWritable.cc:193
std::set< FileWritable * > ObjPtrSet
Definition: FileWritable.h:148
std::map< std::string, double > TypeTimeMap
Definition: FileWritable.h:126
Manager()
Definition: FileWritable.h:163