PBEngine.h
1/* Distributed under the Apache License, Version 2.0.
2 See accompanying NOTICE file for details.*/
3
4#pragma once
5CDM_BIND_DECL(LogMessagesData)
6CDM_BIND_DECL(ActionListData)
7CDM_BIND_DECL(ActionMapData)
8CDM_BIND_DECL(ConditionListData)
9CDM_BIND_DECL(DataRequestedListData)
10CDM_BIND_DECL(DataRequestListData)
11CDM_BIND_DECL2(DataRequest)
12CDM_BIND_DECL2(ValidationTarget)
13CDM_BIND_DECL2(DataRequested)
14CDM_BIND_DECL2(DataRequestManager)
15CDM_BIND_DECL2(DecimalFormat)
16CDM_BIND_DECL2(DynamicStabilization)
17CDM_BIND_DECL2(DynamicStabilizationEngineConvergence)
18CDM_BIND_DECL2(EngineInitialization)
19CDM_BIND_DECL2(TimedStabilization)
20CDM_BIND_DECL2(PatientConfiguration)
21class LogMessages;
22class SEAction;
23class SEActionManager;
29
30class CDM_DECL PBEngine
31{
32public:
33
34 static void Load(const CDM_BIND::LogMessagesData& src, LogMessages& dst);
35 static CDM_BIND::LogMessagesData* Unload(const LogMessages& src);
36 static void Serialize(const CDM_BIND::LogMessagesData& src, LogMessages& dst);
37 static void Serialize(const LogMessages& src, CDM_BIND::LogMessagesData& dst);
38 static bool SerializeToString(const LogMessages& src, std::string& output, eSerializationFormat m, Logger* logger);
39 static bool SerializeFromString(const std::string& src, LogMessages& dst, eSerializationFormat m, Logger* logger);
40
41 static void Load(const CDM_BIND::PatientConfigurationData& src, SEPatientConfiguration& dst, const SESubstanceManager& subMgr);
42 static CDM_BIND::PatientConfigurationData* Unload(const SEPatientConfiguration& src);
43 static void Serialize(const CDM_BIND::PatientConfigurationData& src, SEPatientConfiguration& dst, const SESubstanceManager& subMgr);
44 static void Serialize(const SEPatientConfiguration& src, CDM_BIND::PatientConfigurationData& dst);
45 static bool SerializeToString(const SEPatientConfiguration& src, std::string& output, eSerializationFormat m);
46 static bool SerializeToFile(const SEPatientConfiguration& src, const std::string& filename);
47 static bool SerializeFromString(const std::string& src, SEPatientConfiguration& dst, eSerializationFormat m, const SESubstanceManager& subMgr);
48 static bool SerializeFromFile(const std::string& filename, SEPatientConfiguration& dst, const SESubstanceManager& subMgr);
49
50 static void Load(const CDM_BIND::ConditionListData& src, SEConditionManager& dst, const SESubstanceManager& subMgr);
51 static CDM_BIND::ConditionListData* Unload(const SEConditionManager& src);
52 static void Serialize(const CDM_BIND::ConditionListData& src, SEConditionManager& dst, const SESubstanceManager& subMgr);
53 static void Serialize(const SEConditionManager& src, CDM_BIND::ConditionListData& dst);
54
55 static bool SerializeToString(const SEConditionManager& src, std::string& output, eSerializationFormat m);
56 static bool SerializeToFile(const SEConditionManager& src, const std::string& filename);
57 static bool SerializeFromString(const std::string& src, SEConditionManager& dst, eSerializationFormat m, const SESubstanceManager& subMgr);
58 static bool SerializeFromFile(const std::string& filename, SEConditionManager& dst, const SESubstanceManager& subMgr);
59
60 static void Load(const CDM_BIND::ActionListData& src, SEActionManager& dst);
61 static CDM_BIND::ActionListData* Unload(const SEActionManager& src);
62 static void Serialize(const CDM_BIND::ActionListData& src, SEActionManager& dst);
63 static void Serialize(const SEActionManager& src, CDM_BIND::ActionListData& dst);
64 static void Serialize(const SEEquipmentActionCollection& src, CDM_BIND::ActionListData& dst);
65 static void Serialize(const SEEnvironmentActionCollection& src, CDM_BIND::ActionListData& dst);
66 static void Serialize(const SEPatientActionCollection& src, CDM_BIND::ActionListData& dst);
67
68 static void Load(const CDM_BIND::ActionListData& src, std::vector<SEAction*>& dst, const SESubstanceManager& subMgr);
69 static void Serialize(const CDM_BIND::ActionListData& src, std::vector<SEAction*>& dst, const SESubstanceManager& subMgr);
70 static bool SerializeFromString(const std::string& src, std::vector<SEAction*>& dst, eSerializationFormat m, const SESubstanceManager& subMgr);
71
72 static void Load(const CDM_BIND::ActionMapData& src, std::map<int, std::vector<const SEAction*>>& dst, const SESubstanceManager& subMgr);
73 static void Serialize(const CDM_BIND::ActionMapData& src, std::map<int, std::vector<const SEAction*>>& dst, const SESubstanceManager& subMgr);
74 static bool SerializeFromString(const std::string& src, std::map<int,std::vector<const SEAction*>>& dst, eSerializationFormat m, const SESubstanceManager& subMgr);
75
76 static bool SerializeToString(const SEActionManager& src, std::string& output, eSerializationFormat m);
77 static bool SerializeToFile(const SEActionManager& src, const std::string& filename);
78 static bool SerializeFromString(const std::string& src, SEActionManager& dst, eSerializationFormat m);
79 static bool SerializeFromFile(const std::string& filename, SEActionManager& dst);
80
81 static void Load(const CDM_BIND::DataRequestData& src, SEDataRequest& dst);
82 static CDM_BIND::DataRequestData* Unload(const SEDataRequest& src);
83 static void Serialize(const CDM_BIND::DataRequestData& src, SEDataRequest& dst);
84 static void Serialize(const SEDataRequest& src, CDM_BIND::DataRequestData& dst);
85 static void Copy(const SEDataRequest& src, SEDataRequest& dst);
86
87 static void Load(const CDM_BIND::DataRequestListData& src, std::vector<SEDataRequest*>& dst);
88 static void Serialize(const std::vector<SEDataRequest*>& src, CDM_BIND::DataRequestListData& dst);
89 static bool Serialize(const CDM_BIND::DataRequestListData& src, std::vector<SEDataRequest*>& dst);
90 static bool SerializeToString(const std::vector<SEDataRequest*>& src, std::string& output, eSerializationFormat m);
91 static bool SerializeToFile(const std::vector<SEDataRequest*>& src, const std::string& filename);
92 static bool SerializeFromString(const std::string& src, std::vector<SEDataRequest*>& dst, eSerializationFormat m);
93 static bool SerializeFromFile(const std::string& filename, std::vector<SEDataRequest*>& dst);
94
95 static void Load(const CDM_BIND::ValidationTargetData& src, SEValidationTarget& dst);
96 static CDM_BIND::ValidationTargetData* Unload(const SEValidationTarget& src);
97 static void Serialize(const CDM_BIND::ValidationTargetData& src, SEValidationTarget& dst);
98 static void Serialize(const SEValidationTarget& src, CDM_BIND::ValidationTargetData& dst);
99 static void Copy(const SEValidationTarget& src, SEValidationTarget& dst);
100
101 CDM_BIND::DataRequestedData* Unload(const SEDataRequested& src);
102 static void Serialize(const SEDataRequested& src, CDM_BIND::DataRequestedData& dst);
103 static bool SerializeToString(const SEDataRequested& src, std::string& dst, eSerializationFormat m);
104 static void Serialize(const std::vector<SEDataRequested*>& src, CDM_BIND::DataRequestedListData& dst);
105 static bool SerializeToString(const std::vector<SEDataRequested*>& src, std::string& dst, eSerializationFormat m);
106
107 static void Load(const CDM_BIND::DataRequestManagerData& src, SEDataRequestManager& dst);
108 static CDM_BIND::DataRequestManagerData* Unload(const SEDataRequestManager& src);
109 static void Serialize(const CDM_BIND::DataRequestManagerData& src, SEDataRequestManager& dst);
110 static void Serialize(const SEDataRequestManager& src, CDM_BIND::DataRequestManagerData& dst);
111 static void Copy(const SEDataRequestManager& src, SEDataRequestManager& dst);
112
113 static bool SerializeToString(const SEDataRequestManager& src, std::string& output, eSerializationFormat m);
114 static bool SerializeToFile(const SEDataRequestManager& src, const std::string& filename);
115 static bool SerializeFromString(const std::string& src, SEDataRequestManager& dst, eSerializationFormat m);
116 static bool SerializeFromFile(const std::string& filename, SEDataRequestManager& dst);
117
118 static void Load(const CDM_BIND::DecimalFormatData& src, SEDecimalFormat& dst);
119 static CDM_BIND::DecimalFormatData* Unload(const SEDecimalFormat& src);
120 static void Serialize(const CDM_BIND::DecimalFormatData& src, SEDecimalFormat& dst);
121 static void Serialize(const SEDecimalFormat& src, CDM_BIND::DecimalFormatData& dst);
122
123 static void Load(const CDM_BIND::DynamicStabilizationData& src, SEDynamicStabilization& dst);
124 static CDM_BIND::DynamicStabilizationData* Unload(const SEDynamicStabilization& src);
125 static void Serialize(const CDM_BIND::DynamicStabilizationData& src, SEDynamicStabilization& dst);
126 static void Serialize(const SEDynamicStabilization& src, CDM_BIND::DynamicStabilizationData& dst);
127
128 static bool SerializeToString(const SEDynamicStabilization& src, std::string& output, eSerializationFormat m);
129 static bool SerializeToFile(const SEDynamicStabilization& src, const std::string& filename);
130 static bool SerializeFromString(const std::string& src, SEDynamicStabilization& dst, eSerializationFormat m);
131 static bool SerializeFromFile(const std::string& filename, SEDynamicStabilization& dst);
132
133 static void Load(const CDM_BIND::DynamicStabilizationEngineConvergenceData& src, SEDynamicStabilizationEngineConvergence& dst);
134 static CDM_BIND::DynamicStabilizationEngineConvergenceData* Unload(const SEDynamicStabilizationEngineConvergence& src);
135 static void Serialize(const CDM_BIND::DynamicStabilizationEngineConvergenceData& src, SEDynamicStabilizationEngineConvergence& dst);
136 static void Serialize(const SEDynamicStabilizationEngineConvergence& src, CDM_BIND::DynamicStabilizationEngineConvergenceData& dst);
137
138 static void Load(const CDM_BIND::EngineInitializationData& src, SEEngineInitialization& dst, const SESubstanceManager& subMgr);
139 static CDM_BIND::EngineInitializationData* Unload(const SEEngineInitialization& src);
140 static void Serialize(const CDM_BIND::EngineInitializationData& src, SEEngineInitialization& dst, const SESubstanceManager& subMgr);
141 static void Serialize(const SEEngineInitialization& src, CDM_BIND::EngineInitializationData& dst);
142 static bool SerializeToString(const SEEngineInitialization& src, std::string& output, eSerializationFormat m);
143 static bool SerializeFromString(const std::string& src, SEEngineInitialization& dst, eSerializationFormat m, const SESubstanceManager& subMgr);
144 static bool SerializeFromString(const std::string& src, std::vector<SEEngineInitialization*>& dst, eSerializationFormat m, const SESubstanceManager& subMgr);
145 static void Copy(const SEEngineInitialization& src, SEEngineInitialization& dst, const SESubstanceManager& subMgr);
146
147 static void Load(const CDM_BIND::TimedStabilizationData& src, SETimedStabilization& dst);
148 static CDM_BIND::TimedStabilizationData* Unload(const SETimedStabilization& src);
149 static void Serialize(const CDM_BIND::TimedStabilizationData& src, SETimedStabilization& dst);
150 static void Serialize(const SETimedStabilization& src, CDM_BIND::TimedStabilizationData& dst);
151
152 static bool SerializeToString(const SETimedStabilization& src, std::string& output, eSerializationFormat m);
153 static bool SerializeToFile(const SETimedStabilization& src, const std::string& filename);
154 static bool SerializeFromString(const std::string& src, SETimedStabilization& dst, eSerializationFormat m);
155 static bool SerializeFromFile(const std::string& filename, SETimedStabilization& dst);
156};
Definition: Logger.h:133
Definition: Logger.h:71
Definition: PBEngine.h:31
Definition: SEAction.h:14
Definition: SEActionManager.h:12
Definition: SEConditionManager.h:25
Definition: SEDataRequest.h:18
Definition: SEDataRequestManager.h:10
Definition: SEDataRequested.h:10
Definition: SEDecimalFormat.h:10
Definition: SEDynamicStabilizationEngineConvergence.h:10
Definition: SEDynamicStabilization.h:9
Definition: SEEngineInitialization.h:10
Definition: SEEnvironmentActionCollection.h:13
Definition: SEEquipmentActionCollection.h:47
Definition: SEPatientActionCollection.h:46
Definition: SEPatientConfiguration.h:11
Definition: SESubstanceManager.h:9
Definition: SETimedStabilization.h:8
Definition: SEValidationTarget.h:13

Distributed under the Apache License, Version 2.0.

See accompanying NOTICE file for details.