PBSubstance.h
1/* Distributed under the Apache License, Version 2.0.
2 See accompanying NOTICE file for details.*/
3
4#pragma once
6// Forward Declaire SE and Protobuf Substance Types
7CDM_BIND_DECL2(Substance)
8CDM_BIND_DECL2(SubstanceAerosolization)
9CDM_BIND_DECL2(SubstanceClearance)
10CDM_BIND_DECL2(SubstanceCompound)
11CDM_BIND_DECL2(SubstanceConcentration)
12CDM_BIND_DECL2(SubstanceFraction)
13CDM_BIND_DECL2(SubstancePharmacodynamics)
14CDM_BIND_DECL2(SubstancePharmacokinetics)
15CDM_BIND_DECL2(SubstancePhysicochemicals)
16CDM_BIND_DECL2(SubstanceTissuePharmacokinetics)
17
18class CDM_DECL PBSubstance
19{
20public:
21
22 static void Load(const CDM_BIND::SubstanceData& src, SESubstance& dst);
23 static CDM_BIND::SubstanceData* Unload(const SESubstance& src);
24 static void Serialize(const CDM_BIND::SubstanceData& src, SESubstance& dst);
25 static void Serialize(const SESubstance& src, CDM_BIND::SubstanceData& dst);
26
27 static bool SerializeToString(const SESubstance& src, std::string& output, eSerializationFormat m);
28 static bool SerializeToFile(const SESubstance& src, const std::string& filename);
29 static bool SerializeFromString(const std::string& src, SESubstance& dst, eSerializationFormat m);
30 static bool SerializeFromFile(const std::string& filename, SESubstance& dst);
31
32 static void Load(const CDM_BIND::SubstanceAerosolizationData& src, SESubstanceAerosolization& dst);
33 static CDM_BIND::SubstanceAerosolizationData* Unload(const SESubstanceAerosolization& src);
34 static void Serialize(const CDM_BIND::SubstanceAerosolizationData& src, SESubstanceAerosolization& dst);
35 static void Serialize(const SESubstanceAerosolization& src, CDM_BIND::SubstanceAerosolizationData& dst);
36
37 static void Load(const CDM_BIND::SubstanceClearanceData& src, SESubstanceClearance& dst);
38 static CDM_BIND::SubstanceClearanceData* Unload(const SESubstanceClearance& src);
39 static void Serialize(const CDM_BIND::SubstanceClearanceData& src, SESubstanceClearance& dst);
40 static void Serialize(const SESubstanceClearance& src, CDM_BIND::SubstanceClearanceData& dst);
41
42 static void Load(const CDM_BIND::SubstanceCompoundData& src, SESubstanceCompound& dst, const SESubstanceManager& subMgr);
43 static CDM_BIND::SubstanceCompoundData* Unload(const SESubstanceCompound& src);
44 static void Serialize(const CDM_BIND::SubstanceCompoundData& src, SESubstanceCompound& dst, const SESubstanceManager& subMgr);
45 static void Serialize(const SESubstanceCompound& src, CDM_BIND::SubstanceCompoundData& dst);
46
47 static bool SerializeToString(const SESubstanceCompound& src, std::string& output, eSerializationFormat m);
48 static bool SerializeToFile(const SESubstanceCompound& src, const std::string& filename);
49 static bool SerializeFromString(const std::string& src, SESubstanceCompound& dst, const SESubstanceManager& subMgr, eSerializationFormat m);
50 static bool SerializeFromFile(const std::string& filename, SESubstanceCompound& dst, const SESubstanceManager& subMgr);
51
52 static void Load(const CDM_BIND::SubstanceConcentrationData& src, SESubstanceConcentration& dst);
53 static CDM_BIND::SubstanceConcentrationData* Unload(const SESubstanceConcentration& src);
54 static void Serialize(const CDM_BIND::SubstanceConcentrationData& src, SESubstanceConcentration& dst);
55 static void Serialize(const SESubstanceConcentration& src, CDM_BIND::SubstanceConcentrationData& dst);
56
57 static void Load(const CDM_BIND::SubstanceFractionData& src, SESubstanceFraction& dst);
58 static CDM_BIND::SubstanceFractionData* Unload(const SESubstanceFraction& src);
59 static void Serialize(const CDM_BIND::SubstanceFractionData& src, SESubstanceFraction& dst);
60 static void Serialize(const SESubstanceFraction& src, CDM_BIND::SubstanceFractionData& dst);
61
62 static void Load(const CDM_BIND::SubstancePharmacodynamicsData& src, SESubstancePharmacodynamics& dst);
63 static CDM_BIND::SubstancePharmacodynamicsData* Unload(const SESubstancePharmacodynamics& src);
64 static void Serialize(const CDM_BIND::SubstancePharmacodynamicsData& src, SESubstancePharmacodynamics& dst);
65 static void Serialize(const SESubstancePharmacodynamics& src, CDM_BIND::SubstancePharmacodynamicsData& dst);
66
67 static void Load(const CDM_BIND::SubstancePharmacokineticsData& src, SESubstancePharmacokinetics& dst);
68 static CDM_BIND::SubstancePharmacokineticsData* Unload(const SESubstancePharmacokinetics& src);
69 static void Serialize(const CDM_BIND::SubstancePharmacokineticsData& src, SESubstancePharmacokinetics& dst);
70 static void Serialize(const SESubstancePharmacokinetics& src, CDM_BIND::SubstancePharmacokineticsData& dst);
71
72 static void Load(const CDM_BIND::SubstancePhysicochemicalsData& src, SESubstancePhysicochemicals& dst);
73 static CDM_BIND::SubstancePhysicochemicalsData* Unload(const SESubstancePhysicochemicals& src);
74 static void Serialize(const CDM_BIND::SubstancePhysicochemicalsData& src, SESubstancePhysicochemicals& dst);
75 static void Serialize(const SESubstancePhysicochemicals& src, CDM_BIND::SubstancePhysicochemicalsData& dst);
76
77 static void Load(const CDM_BIND::SubstanceTissuePharmacokineticsData& src, SESubstanceTissuePharmacokinetics& dst);
78 static CDM_BIND::SubstanceTissuePharmacokineticsData* Unload(const SESubstanceTissuePharmacokinetics& src);
79 static void Serialize(const CDM_BIND::SubstanceTissuePharmacokineticsData& src, SESubstanceTissuePharmacokinetics& dst);
80 static void Serialize(const SESubstanceTissuePharmacokinetics& src, CDM_BIND::SubstanceTissuePharmacokineticsData& dst);
81};
Definition: PBSubstance.h:19
Definition: SESubstanceAerosolization.h:7
Definition: SESubstanceClearance.h:9
Definition: SESubstanceCompound.h:10
Definition: SESubstanceConcentration.h:11
Definition: SESubstanceFraction.h:10
Definition: SESubstance.h:15
Definition: SESubstanceManager.h:9
Definition: SESubstancePharmacodynamics.h:8
Definition: SESubstancePharmacokinetics.h:9
Definition: SESubstancePhysicochemicals.h:15
Definition: SESubstanceTissuePharmacokinetics.h:7

Distributed under the Apache License, Version 2.0.

See accompanying NOTICE file for details.