5 #include "IExportable.h"
6 #include "DynamicLibraryRecord.h"
20 class ConstructorRecord
24 std::string constructorName;
25 ConstructorRecord(std::string constructorName,
DynamicLibraryRecord dynamicLibraryRecord) : constructorName(constructorName), dynamicLibraryRecord(dynamicLibraryRecord) {};
28 typedef std::map<std::string, ConstructorRecord> ConstructorRecords;
29 typedef std::pair<std::string, ConstructorRecord> ConstructorRecordPair;
30 static ConstructorRecords records;
61 static void Load(
const std::string& identifier,
const std::string& constructorName,
const std::string& path);
64 static bool ExportableFactory::IsRecordExist(
const std::string& identifier);
65 static ConstructorRecords::iterator ExportableFactory::GetRecord(
const std::string& identifier);
The exportable object factory.
Definition: ExportableFactory.h:17
static IExportable * Create(const std::string &identifier)
Creates a new exportable object.
Definition: ExportableFactory.cpp:40
Definition: DefaultCalibrationInfoList.h:12
static void Load(const std::string &identifier, const std::string &constructorName, const std::string &path)
Loads a function and register it with an unique identifier.
Definition: ExportableFactory.cpp:13
The main interface
Definition: IExportable.h:12
(Internal class) Dynamic library record
Definition: DynamicLibraryRecord.h:27