CircuitManager.h
1/* Distributed under the Apache License, Version 2.0.
2 See accompanying NOTICE file for details.*/
3
4#pragma once
5
6#include "engine/CommonDefs.h"
7#include "cdm/circuit/SECircuitManager.h"
10
11namespace pulse
12{
13 class Data;
17 class PULSE_DECL CircuitManager : public SECircuitManager
18 {
19 public:
20
21 CircuitManager(Data& data);
22 virtual ~CircuitManager();
23
24 virtual void Clear();
25 virtual void StateChange();
26
27 virtual void SetReadOnlyFluid(bool b);
28
29 // Active methods return the circuit configuration to be calculated
30 virtual SEFluidCircuit& GetActiveCardiovascularCircuit();
31 virtual SEFluidCircuit& GetCardiovascularCircuit();
32 virtual SEFluidCircuit& GetRenalCircuit();
33
34 virtual SEFluidCircuit& GetActiveRespiratoryCircuit();
35 virtual SEFluidCircuit& GetRespiratoryCircuit();
36 virtual SEFluidCircuit& GetRespiratoryAndAnesthesiaMachineCircuit();
37 virtual SEFluidCircuit& GetRespiratoryAndBagValveMaskCircuit();
38 virtual SEFluidCircuit& GetRespiratoryAndInhalerCircuit();
39 virtual SEFluidCircuit& GetRespiratoryAndNasalCannulaCircuit();
40 virtual SEFluidCircuit& GetRespiratoryAndSimpleMaskCircuit();
41 virtual SEFluidCircuit& GetRespiratoryAndNonRebreatherMaskCircuit();
42 virtual SEFluidCircuit& GetRespiratoryAndMechanicalVentilationCircuit();
43 virtual SEFluidCircuit& GetRespiratoryAndMechanicalVentilatorCircuit();
44
45 virtual SEThermalCircuit& GetTemperatureCircuit();
46 virtual SEThermalCircuit& GetExternalTemperatureCircuit();
47 virtual SEThermalCircuit& GetInternalTemperatureCircuit();
48
49 virtual SEFluidCircuit& GetAnesthesiaMachineCircuit();
50 virtual SEFluidCircuit& GetBagValveMaskCircuit();
51 virtual SEFluidCircuit& GetMechanicalVentilatorCircuit();
52
53 protected:
54
55 Data& m_data;
56
57 // Note, I am not making a tissue or inhaler standalone circuit
58 // this are super simple circuits and can't be tested by themselves
59
60 // The combined cardiovascular circuit only needs to be built once,
61 // but we can build it different ways, with or without renal and tissue subcircuits.
62 // It depends on how the engine is configured, but this configuration does not change
63 // once it's set. Tests can also configure how it's built and test appropriately.
64
66
69
71
75
76 // Based on if equipment is hooked up, we have to build out the combination of
77 // these 2 circuits and graphs as we don't want to dynamically modify circuits
78 // It's quicker and easier to test these combiniation circuits
87
89 SEThermalCircuit* m_InternalTemperatureCircuit;// Attempt at circuit independence
90 SEThermalCircuit* m_ExternalTemperatureCircuit;// Attempt at circuit independence
91 };
92}
93
95// Circuit Enums //
97
98namespace pulse
99{
100 class Circuits
101 {
102 public:
103 DEFINE_STATIC_STRING(FullCardiovascular);
104 DEFINE_STATIC_STRING(Cardiovascular);
105 DEFINE_STATIC_STRING(Renal);
106 DEFINE_STATIC_STRING(Respiratory);
107 // Equipment
108 DEFINE_STATIC_STRING(AnesthesiaMachine);
109 DEFINE_STATIC_STRING(BagValveMask);
110 DEFINE_STATIC_STRING(MechanicalVentilator);
111 DEFINE_STATIC_STRING(RespiratoryAnesthesia);
112 DEFINE_STATIC_STRING(RespiratoryBagValveMask);
113 DEFINE_STATIC_STRING(RespiratoryInhaler);
114 DEFINE_STATIC_STRING(RespiratoryMechanicalVentilation);
115 DEFINE_STATIC_STRING(RespiratoryMechanicalVentilator);
116 DEFINE_STATIC_STRING(RespiratoryNasalCannula);
117 DEFINE_STATIC_STRING(RespiratoryNonRebreatherMask);
118 DEFINE_STATIC_STRING(RespiratorySimpleMask);
119 // Environment
120 DEFINE_STATIC_STRING(Temperature);
121 DEFINE_STATIC_STRING(InternalTemperature);
122 DEFINE_STATIC_STRING(ExternalTemperature);
123 };
124
126 // Chyme Circuit Enums //
128
129 class ChymeNode
130 {
131 public:
132 DEFINE_STATIC_STRING(SmallIntestineC1);
133 };
134
135 class ChymePath
136 {
137 public:
138 DEFINE_STATIC_STRING(SmallIntestineC1ToSmallIntestine1);
139 DEFINE_STATIC_STRING(GroundToSmallIntestineC1);
140 DEFINE_STATIC_STRING(GutT1ToGround);
141 };
142
144 // Respiratoruy Circuit Enums //
146
147 class RespiratoryNode
148 {
149 public:
150 DEFINE_STATIC_STRING(Carina);
151
152 DEFINE_STATIC_STRING(LeftAlveoli);
153 DEFINE_STATIC_STRING(LeftAlveoliLeak);
154 DEFINE_STATIC_STRING(LeftAnatomicDeadSpace);
155 DEFINE_STATIC_STRING(LeftAlveolarDeadSpace);
156 DEFINE_STATIC_STRING(LeftChestLeak);
157 DEFINE_STATIC_STRING(LeftPleural);
158 DEFINE_STATIC_STRING(LeftPleuralConnection);
159
160 DEFINE_STATIC_STRING(Airway);
161 DEFINE_STATIC_STRING(Pharynx);
162
163 DEFINE_STATIC_STRING(RightAlveoli);
164 DEFINE_STATIC_STRING(RightAlveoliLeak);
165 DEFINE_STATIC_STRING(RightAnatomicDeadSpace);
166 DEFINE_STATIC_STRING(RightAlveolarDeadSpace);
167 DEFINE_STATIC_STRING(RightChestLeak);
168 DEFINE_STATIC_STRING(RightPleural);
169 DEFINE_STATIC_STRING(RightPleuralConnection);
170
171 DEFINE_STATIC_STRING(Stomach);
172 DEFINE_STATIC_STRING(RespiratoryMuscle);
173
174 };
175
176 class RespiratoryPath
177 {
178 public:
179 DEFINE_STATIC_STRING(CarinaToLeftAnatomicDeadSpace);
180 DEFINE_STATIC_STRING(CarinaToRightAnatomicDeadSpace);
181
182 DEFINE_STATIC_STRING(EnvironmentToLeftChestLeak);
183 DEFINE_STATIC_STRING(EnvironmentToAirway);
184 DEFINE_STATIC_STRING(EnvironmentToRightChestLeak);
185
186 DEFINE_STATIC_STRING(LeftAlveoliLeakToLeftPleural);
187 DEFINE_STATIC_STRING(LeftAlveoliToLeftAlveoliLeak);
188 DEFINE_STATIC_STRING(LeftAlveoliToLeftPleuralConnection);
189 DEFINE_STATIC_STRING(LeftPleuralConnectionToLeftPleural);
190 DEFINE_STATIC_STRING(LeftAnatomicDeadSpaceToLeftAlveolarDeadSpace);
191 DEFINE_STATIC_STRING(LeftAlveolarDeadSpaceToLeftAlveoli);
192 DEFINE_STATIC_STRING(LeftChestLeakToLeftPleural);
193 DEFINE_STATIC_STRING(LeftPleuralToEnvironment);
194 DEFINE_STATIC_STRING(LeftPleuralToRespiratoryMuscle);
195
196 DEFINE_STATIC_STRING(AirwayToPharynx);
197 DEFINE_STATIC_STRING(AirwayToStomach);
198 DEFINE_STATIC_STRING(PharynxToCarina);
199 DEFINE_STATIC_STRING(PharynxToEnvironment);
200
201 DEFINE_STATIC_STRING(RightAlveoliLeakToRightPleural);
202 DEFINE_STATIC_STRING(RightAlveoliToRightAlveoliLeak);
203 DEFINE_STATIC_STRING(RightAlveoliToRightPleuralConnection);
204 DEFINE_STATIC_STRING(RightPleuralConnectionToRightPleural);
205 DEFINE_STATIC_STRING(RightAnatomicDeadSpaceToRightAlveolarDeadSpace);
206 DEFINE_STATIC_STRING(RightAlveolarDeadSpaceToRightAlveoli);
207 DEFINE_STATIC_STRING(RightChestLeakToRightPleural);
208 DEFINE_STATIC_STRING(RightPleuralToEnvironment);
209 DEFINE_STATIC_STRING(RightPleuralToRespiratoryMuscle);
210
211 DEFINE_STATIC_STRING(EnvironmentToRespiratoryMuscle);
212 DEFINE_STATIC_STRING(StomachToEnvironment);
213 };
214
216 // Anesthesia Machine Circuit Enums //
218
219 class AnesthesiaMachineNode
220 {
221 public:
222 DEFINE_STATIC_STRING_EX(Connection, AnesthesiaMachineConnection);
223 DEFINE_STATIC_STRING_EX(ExpiratoryLimb, AnesthesiaMachineExpiratoryLimb);
224 DEFINE_STATIC_STRING_EX(GasInlet, AnesthesiaMachineGasInlet);
225 DEFINE_STATIC_STRING_EX(GasSource, AnesthesiaMachineGasSource);
226 DEFINE_STATIC_STRING_EX(InspiratoryLimb, AnesthesiaMachineInspiratoryLimb);
227 DEFINE_STATIC_STRING_EX(ReliefValve, AnesthesiaMachineReliefValve);
228 DEFINE_STATIC_STRING_EX(Scrubber, AnesthesiaMachineScrubber);
229 DEFINE_STATIC_STRING_EX(Selector, AnesthesiaMachineSelector);
230 DEFINE_STATIC_STRING_EX(Ventilator, AnesthesiaMachineVentilator);
231 DEFINE_STATIC_STRING_EX(YPiece, AnesthesiaMachineYPiece);
232 };
233
234 class AnesthesiaMachinePath
235 {
236 public:
237 DEFINE_STATIC_STRING_EX(EnvironmentToVentilator, EnvironmentToAnesthesiaMachineVentilator);
238 DEFINE_STATIC_STRING_EX(VentilatorToEnvironment, AnesthesiaMachineVentilatorToEnvironment);
239 DEFINE_STATIC_STRING_EX(EnvironmentToReliefValve, EnvironmentToAnesthesiaMachineReliefValve);
240 DEFINE_STATIC_STRING_EX(VentilatorToSelector, AnesthesiaMachineVentilatorToSelector);
241 DEFINE_STATIC_STRING_EX(SelectorToReliefValve, AnesthesiaMachineSelectorToReliefValve);
242 DEFINE_STATIC_STRING_EX(SelectorToScrubber, AnesthesiaMachineSelectorToScrubber);
243 DEFINE_STATIC_STRING_EX(ScrubberToGasInlet, AnesthesiaMachineScrubberToGasInlet);
244 DEFINE_STATIC_STRING_EX(EnvironmentToGasSource, EnvironmentToAnesthesiaMachineGasSource);
245 DEFINE_STATIC_STRING_EX(GasSourceToGasInlet, AnesthesiaMachineGasSourceToGasInlet);
246 DEFINE_STATIC_STRING_EX(GasInletToInspiratoryLimb, AnesthesiaMachineGasInletToInspiratoryLimb);
247 DEFINE_STATIC_STRING_EX(InspiratoryLimbToYPiece, AnesthesiaMachineInspiratoryLimbToYPiece);
248 DEFINE_STATIC_STRING_EX(YPieceToExpiratoryLimb, AnesthesiaMachineYPieceToExpiratoryLimb);
249 DEFINE_STATIC_STRING_EX(ExpiratoryLimbToSelector, AnesthesiaMachineExpiratoryLimbToSelector);
250 DEFINE_STATIC_STRING_EX(YPieceToConnection, AnesthesiaMachineYPieceToConnection);
251 DEFINE_STATIC_STRING_EX(ConnectionToEnvironment, AnesthesiaMachineConnectionToEnvironment);
252 };
253
254 class CombinedAnesthesiaMachinePath
255 {
256 public:
257 DEFINE_STATIC_STRING(ConnectionToAirway);
258 DEFINE_STATIC_STRING(GroundConnection);
259 };
260
262 // Bag Valve Mask Circuit Enums //
264
265 class BagValveMaskNode
266 {
267 public:
268 DEFINE_STATIC_STRING_EX(Reservoir, BagValveMaskReservoir);
269 DEFINE_STATIC_STRING_EX(Bag, BagValveMaskBag);
270 DEFINE_STATIC_STRING_EX(Valve, BagValveMaskValve);
271 DEFINE_STATIC_STRING_EX(Filter, BagValveMaskFilter);
272 DEFINE_STATIC_STRING_EX(Connection, BagValveMaskConnection);
273 };
274
275 class BagValveMaskPath
276 {
277 public:
278 DEFINE_STATIC_STRING_EX(EnvironmentToReservoir, BagValveMaskEnvironmentToReservoir);
279 DEFINE_STATIC_STRING_EX(ReservoirToBag, BagValveMaskReservoirToBag);
280 DEFINE_STATIC_STRING_EX(BagToValve, BagValveMaskBagToValve);
281 DEFINE_STATIC_STRING_EX(ValveToFilter, BagValveMaskValveToFilter);
282 DEFINE_STATIC_STRING_EX(FilterToConnection, BagValveMaskFilterToConnection);
283 DEFINE_STATIC_STRING_EX(ConnectionToEnvironment, BagValveMaskConnectionToEnvironment);
284 };
285
286 class CombinedBagValveMaskPath
287 {
288 public:
289 DEFINE_STATIC_STRING_EX(ConnectionToAirway, BagValveMaskConnectionToAirway);
290 };
291
293 // Inhaler Circuit Enums //
295
296 class InhalerNode
297 {
298 public:
299 DEFINE_STATIC_STRING_EX(Mouthpiece, InhalerMouthpiece);
300 };
301
302 class InhalerPath
303 {
304 public:
305 DEFINE_STATIC_STRING_EX(EnvironmentToMouthpiece, EnvironmentToInhalerMouthpiece);
306 DEFINE_STATIC_STRING_EX(MouthpieceToAirway, InhalerMouthpieceToAirway);
307 };
308
310 // Mechanical Ventilation Circuit Enums //
312
313 class MechanicalVentilationNode
314 {
315 public:
316 DEFINE_STATIC_STRING_EX(Connection, MechanicalVentilationConnection);
317 };
318
319 class MechanicalVentilationPath
320 {
321 public:
322 DEFINE_STATIC_STRING_EX(ConnectionToAirway, MechanicalVentilationConnectionToAirway);
323 DEFINE_STATIC_STRING_EX(GroundToConnection, MechanicalVentilationGroundToConnection);
324 };
325
327 // Mechanical Ventilator Circuit Enums //
329
330 class MechanicalVentilatorNode
331 {
332 public:
333 DEFINE_STATIC_STRING_EX(Ventilator, MechanicalVentilator);
334 DEFINE_STATIC_STRING_EX(ExpiratoryValve, MechanicalVentilatorExpiratoryValve);
335 DEFINE_STATIC_STRING_EX(InspiratoryValve, MechanicalVentilatorInspiratoryValve);
336 DEFINE_STATIC_STRING_EX(ExpiratoryLimb, MechanicalVentilatorExpiratoryLimb);
337 DEFINE_STATIC_STRING_EX(InspiratoryLimb, MechanicalVentilatorInspiratoryLimb);
338 DEFINE_STATIC_STRING_EX(YPiece, MechanicalVentilatorYPiece);
339 DEFINE_STATIC_STRING_EX(ReliefValve, MechanicalVentilatorReliefValve);
340 DEFINE_STATIC_STRING_EX(Connection, MechanicalVentilatorConnection);
341 };
342
343 class MechanicalVentilatorPath
344 {
345 public:
346 DEFINE_STATIC_STRING_EX(EnvironmentToVentilator, EnvironmentToMechanicalVentilator);
347 DEFINE_STATIC_STRING_EX(VentilatorToEnvironment, MechanicalVentilatorToEnvironment);
348 DEFINE_STATIC_STRING_EX(VentilatorToExpiratoryValve, MechanicalVentilatorToExpiratoryValve);
349 DEFINE_STATIC_STRING_EX(VentilatorToInspiratoryValve, MechanicalVentilatorToInspiratoryValve);
350 DEFINE_STATIC_STRING_EX(ExpiratoryLimbToExpiratoryValve, MechanicalVentilatorExpiratoryLimbToExpiratoryValve);
351 DEFINE_STATIC_STRING_EX(InspiratoryValveToInspiratoryLimb, MechanicalVentilatorInspiratoryValveToInspiratoryLimb);
352 DEFINE_STATIC_STRING_EX(ExpiratoryLimbToYPiece, MechanicalVentilatorExpiratoryLimbToYPiece);
353 DEFINE_STATIC_STRING_EX(InspiratoryLimbToYPiece, MechanicalVentilatorInspiratoryLimbToYPiece);
354 DEFINE_STATIC_STRING_EX(YPieceToConnection, MechanicalVentilatorYPieceToConnection);
355 DEFINE_STATIC_STRING_EX(LeakConnectionToEnvironment, MechanicalVentilatorLeakConnectionToEnvironment);
356 DEFINE_STATIC_STRING_EX(ConnectionToReliefValve, MechanicalVentilatorConnectionToReliefValve);
357 DEFINE_STATIC_STRING_EX(EnvironmentToReliefValve, MechanicalVentilatorEnvironmentToReliefVlave);
358 DEFINE_STATIC_STRING_EX(ConnectionToEnvironment, MechanicalVentilatorConnectionToEnvironment);
359 };
360
361 class CombinedMechanicalVentilatorPath
362 {
363 public:
364 DEFINE_STATIC_STRING_EX(ConnectionToAirway, MechanicalVentilatorConnectionToAirway);
365 };
366
368 // Nasal Cannula Circuit Enums //
370
371 class NasalCannulaNode
372 {
373 public:
374 DEFINE_STATIC_STRING(NasalCannula);
375 DEFINE_STATIC_STRING(NasalCannulaOxygenSource);
376 };
377
378 class NasalCannulaPath
379 {
380 public:
381 DEFINE_STATIC_STRING(NasalCannulaPressure);
382 DEFINE_STATIC_STRING(NasalCannulaOxygenInlet);
383 DEFINE_STATIC_STRING(NasalCannulaSeal);
384 DEFINE_STATIC_STRING(NasalCannulaToAirway);
385 };
386
388 // NonRebreather Mask Circuit Enums //
390
391 class NonRebreatherMaskNode
392 {
393 public:
394 DEFINE_STATIC_STRING(NonRebreatherMaskOxygenSource);
395 DEFINE_STATIC_STRING(NonRebreatherMask);
396 DEFINE_STATIC_STRING(NonRebreatherMaskBag);
397 DEFINE_STATIC_STRING(NonRebreatherMaskPorts);
398 };
399
400 class NonRebreatherMaskPath
401 {
402 public:
403 DEFINE_STATIC_STRING(NonRebreatherMaskPressure);
404 DEFINE_STATIC_STRING(NonRebreatherMaskOxygenInlet);
405 DEFINE_STATIC_STRING(NonRebreatherMaskBag);
406 DEFINE_STATIC_STRING(NonRebreatherMaskReservoirValve);
407 DEFINE_STATIC_STRING(NonRebreatherMaskSeal);
408 DEFINE_STATIC_STRING(NonRebreatherMaskExhalationValves);
409 DEFINE_STATIC_STRING(NonRebreatherMaskExhalation);
410 DEFINE_STATIC_STRING(NonRebreatherMaskToAirway);
411 };
412
414 // Simple Mask Circuit Enums //
416
417 class SimpleMaskNode
418 {
419 public:
420 DEFINE_STATIC_STRING(SimpleMask);
421 DEFINE_STATIC_STRING(SimpleMaskOxygenSource);
422 };
423
424 class SimpleMaskPath
425 {
426 public:
427 DEFINE_STATIC_STRING(SimpleMaskPressure);
428 DEFINE_STATIC_STRING(SimpleMaskOxygenInlet);
429 DEFINE_STATIC_STRING(SimpleMaskSeal);
430 DEFINE_STATIC_STRING(SimpleMaskPorts);
431 DEFINE_STATIC_STRING(SimpleMaskToAirway);
432 };
433
435 // Environment Gas Circuit Enums //
437
438 class EnvironmentNode
439 {
440 public:
441 DEFINE_STATIC_STRING(Ambient);
442 };
443
445 // External Temperature Circuit Enums //
447
448 class ExternalTemperatureNode
449 {
450 public:
451 DEFINE_STATIC_STRING(Active);
452 DEFINE_STATIC_STRING(Clothing);
453 DEFINE_STATIC_STRING(Enclosure);
454 DEFINE_STATIC_STRING(ExternalCore);
455 DEFINE_STATIC_STRING(ExternalSkin);
456 DEFINE_STATIC_STRING(ExternalGround);
457 DEFINE_STATIC_STRING(Ambient);
458 };
459
460 class ExternalTemperaturePath
461 {
462 public:
463 DEFINE_STATIC_STRING(ActiveToClothing);
464 DEFINE_STATIC_STRING(ClothingToEnclosure);
465 DEFINE_STATIC_STRING(ClothingToEnvironment);
466 DEFINE_STATIC_STRING(ExternalCoreToGround);
467 DEFINE_STATIC_STRING(GroundToActive);
468 DEFINE_STATIC_STRING(GroundToClothing);
469 DEFINE_STATIC_STRING(GroundToEnclosure);
470 DEFINE_STATIC_STRING(GroundToEnvironment);
471 DEFINE_STATIC_STRING(ExternalSkinToGround);
472 DEFINE_STATIC_STRING(ExternalSkinToClothing);
473 };
474
476 // Internal Temperature Circuit Enums //
478
479 class InternalTemperatureNode
480 {
481 public:
482 DEFINE_STATIC_STRING(InternalCore);
483 DEFINE_STATIC_STRING(InternalSkin);
484 DEFINE_STATIC_STRING(InternalGround);
485 };
486
487 class InternalTemperaturePath
488 {
489 public:
490 DEFINE_STATIC_STRING(GroundToInternalCore);
491 DEFINE_STATIC_STRING(InternalCoreToInternalSkin);
492 DEFINE_STATIC_STRING(InternalCoreToGround);
493 DEFINE_STATIC_STRING(InternalSkinToGround);
494 };
495
497 // Combined Temperature Circuit Enums //
499
500 class CombinedTemperaturePath
501 {
502 public:
503 DEFINE_STATIC_STRING(InternalCoreToExternalCore);
504 DEFINE_STATIC_STRING(InternalSkinToExternalSkin);
505 };
506
507 class CardiovascularNode
508 {
509 public:
510 DEFINE_STATIC_STRING(RightHeart1);
511 DEFINE_STATIC_STRING(RightHeart2);
512 DEFINE_STATIC_STRING(RightHeart3);
513
514 DEFINE_STATIC_STRING(MainPulmonaryArteries1);
515 DEFINE_STATIC_STRING(LeftIntermediatePulmonaryArteries1);
516 DEFINE_STATIC_STRING(LeftPulmonaryArteries1);
517 DEFINE_STATIC_STRING(RightIntermediatePulmonaryArteries1);
518 DEFINE_STATIC_STRING(RightPulmonaryArteries1);
519
520 DEFINE_STATIC_STRING(LeftPulmonaryCapillaries1);
521 DEFINE_STATIC_STRING(RightPulmonaryCapillaries1);
522
523 DEFINE_STATIC_STRING(LeftIntermediatePulmonaryVeins1);
524 DEFINE_STATIC_STRING(LeftPulmonaryVeins1);
525 DEFINE_STATIC_STRING(RightIntermediatePulmonaryVeins1);
526 DEFINE_STATIC_STRING(RightPulmonaryVeins1);
527
528 DEFINE_STATIC_STRING(LeftHeart1);
529 DEFINE_STATIC_STRING(LeftHeart2);
530 DEFINE_STATIC_STRING(LeftHeart3);
531
532 DEFINE_STATIC_STRING(Aorta1);
533 DEFINE_STATIC_STRING(Aorta2);
534 DEFINE_STATIC_STRING(Aorta3);
535 DEFINE_STATIC_STRING(Aorta4);
536
537 DEFINE_STATIC_STRING(AbdominalCavity1);
538
539 DEFINE_STATIC_STRING(Bone1);
540 DEFINE_STATIC_STRING(Bone2);
541
542 DEFINE_STATIC_STRING(Brain1);
543 DEFINE_STATIC_STRING(Brain2);
544
545 DEFINE_STATIC_STRING(Fat1);
546 DEFINE_STATIC_STRING(Fat2);
547
548 DEFINE_STATIC_STRING(LargeIntestine1);
549
550 DEFINE_STATIC_STRING(Liver1);
551 DEFINE_STATIC_STRING(Liver2);
552 DEFINE_STATIC_STRING(PortalVein1);
553
554 DEFINE_STATIC_STRING(LeftArm1);
555 DEFINE_STATIC_STRING(LeftArm2);
556
557 DEFINE_STATIC_STRING(LeftKidney1);
558 DEFINE_STATIC_STRING(LeftKidney2);
559
560 DEFINE_STATIC_STRING(LeftLeg1);
561 DEFINE_STATIC_STRING(LeftLeg2);
562
563 DEFINE_STATIC_STRING(Muscle1);
564 DEFINE_STATIC_STRING(Muscle2);
565
566 DEFINE_STATIC_STRING(Myocardium1);
567 DEFINE_STATIC_STRING(Myocardium2);
568
569 DEFINE_STATIC_STRING(Pericardium1);
570
571 DEFINE_STATIC_STRING(RightArm1);
572 DEFINE_STATIC_STRING(RightArm2);
573
574 DEFINE_STATIC_STRING(RightKidney1);
575 DEFINE_STATIC_STRING(RightKidney2);
576
577 DEFINE_STATIC_STRING(RightLeg1);
578 DEFINE_STATIC_STRING(RightLeg2);
579
580 DEFINE_STATIC_STRING(Skin1);
581 DEFINE_STATIC_STRING(Skin2);
582
583 DEFINE_STATIC_STRING(SmallIntestine1);
584
585 DEFINE_STATIC_STRING(Splanchnic1);
586
587 DEFINE_STATIC_STRING(Spleen1);
588
589 DEFINE_STATIC_STRING(VenaCava1);
590
591 DEFINE_STATIC_STRING(Ground);
592 };
593
594 class CardiovascularPath
595 {
596 public:
597 // Heart and Lungs
598 DEFINE_STATIC_STRING(VenaCava1ToRightHeart2);
599 DEFINE_STATIC_STRING(RightHeart2ToRightHeart1);
600 DEFINE_STATIC_STRING(RightHeart1ToRightHeart3);
601 DEFINE_STATIC_STRING(RightHeart3ToGround);
602 DEFINE_STATIC_STRING(RightHeart1ToMainPulmonaryArteries1);
603 DEFINE_STATIC_STRING(MainPulmonaryArteries1ToRightIntermediatePulmonaryArteries1);
604 DEFINE_STATIC_STRING(RightIntermediatePulmonaryArteries1ToRightPulmonaryArteries1);
605 DEFINE_STATIC_STRING(RightPulmonaryArteries1ToRightPulmonaryVeins1);
606 DEFINE_STATIC_STRING(RightPulmonaryArteries1ToRightPulmonaryCapillaries1);
607 DEFINE_STATIC_STRING(RightPulmonaryArteries1ToGround);
608 DEFINE_STATIC_STRING(RightPulmonaryCapillaries1ToRightPulmonaryVeins1);
609 DEFINE_STATIC_STRING(RightPulmonaryCapillaries1ToGround);
610 DEFINE_STATIC_STRING(RightPulmonaryVeins1ToRightIntermediatePulmonaryVeins1);
611 DEFINE_STATIC_STRING(RightPulmonaryVeins1ToGround);
612 DEFINE_STATIC_STRING(RightIntermediatePulmonaryVeins1ToLeftHeart2);
613 DEFINE_STATIC_STRING(MainPulmonaryArteries1ToLeftIntermediatePulmonaryArteries1);
614 DEFINE_STATIC_STRING(LeftIntermediatePulmonaryArteries1ToLeftPulmonaryArteries1);
615 DEFINE_STATIC_STRING(LeftPulmonaryArteries1ToLeftPulmonaryVeins1);
616 DEFINE_STATIC_STRING(LeftPulmonaryArteries1ToLeftPulmonaryCapillaries1);
617 DEFINE_STATIC_STRING(LeftPulmonaryArteries1ToGround);
618 DEFINE_STATIC_STRING(LeftPulmonaryCapillaries1ToGround);
619 DEFINE_STATIC_STRING(LeftPulmonaryCapillaries1ToLeftPulmonaryVeins1);
620 DEFINE_STATIC_STRING(LeftPulmonaryVeins1ToLeftIntermediatePulmonaryVeins1);
621 DEFINE_STATIC_STRING(LeftPulmonaryVeins1ToGround);
622 DEFINE_STATIC_STRING(LeftIntermediatePulmonaryVeins1ToLeftHeart2)
623 DEFINE_STATIC_STRING(LeftHeart2ToLeftHeart1);
624 DEFINE_STATIC_STRING(LeftHeart1ToLeftHeart3);
625 DEFINE_STATIC_STRING(LeftHeart3ToGround);
626 DEFINE_STATIC_STRING(LeftHeart1ToAorta2);
627 DEFINE_STATIC_STRING(Aorta2ToAorta3);
628 DEFINE_STATIC_STRING(Aorta3ToAorta1);
629 DEFINE_STATIC_STRING(Aorta1ToAorta4);
630
631 // Abdominal Cavity
632 DEFINE_STATIC_STRING(GroundToAorta4);
633 DEFINE_STATIC_STRING(AbdominalCavity1ToGround);
634 DEFINE_STATIC_STRING(GroundToAbdominalCavity1);
635
636 // Brain
637 DEFINE_STATIC_STRING(Aorta1ToBrain1);
638 DEFINE_STATIC_STRING(Brain1ToGround);
639 DEFINE_STATIC_STRING(Brain1ToBrain2);
640 DEFINE_STATIC_STRING(Brain2ToVenaCava1);
641 // Bone
642 DEFINE_STATIC_STRING(Aorta1ToBone1);
643 DEFINE_STATIC_STRING(Bone1ToGround);
644 DEFINE_STATIC_STRING(Bone1ToBone2);
645 DEFINE_STATIC_STRING(Bone2ToVenaCava1);
646 // Fat
647 DEFINE_STATIC_STRING(Aorta1ToFat1);
648 DEFINE_STATIC_STRING(Fat1ToGround);
649 DEFINE_STATIC_STRING(Fat1ToFat2);
650 DEFINE_STATIC_STRING(Fat2ToVenaCava1);
651 // Large Intestine
652 DEFINE_STATIC_STRING(Aorta1ToLargeIntestine1);
653 DEFINE_STATIC_STRING(LargeIntestine1ToGround);
654 DEFINE_STATIC_STRING(LargeIntestine1ToPortalVein1);
655 // Left Arm
656 DEFINE_STATIC_STRING(Aorta1ToLeftArm1);
657 DEFINE_STATIC_STRING(LeftArm1ToGround);
658 DEFINE_STATIC_STRING(LeftArm1ToLeftArm2);
659 DEFINE_STATIC_STRING(LeftArm2ToVenaCava1);
660 // Left Kidney
661 DEFINE_STATIC_STRING(Aorta1ToLeftKidney1);
662 DEFINE_STATIC_STRING(LeftKidney1ToGround);
663 DEFINE_STATIC_STRING(LeftKidney1ToLeftKidney2);
664 DEFINE_STATIC_STRING(LeftKidney2ToVenaCava1);
665 // Left Leg
666 DEFINE_STATIC_STRING(Aorta1ToLeftLeg1);
667 DEFINE_STATIC_STRING(LeftLeg1ToGround);
668 DEFINE_STATIC_STRING(LeftLeg1ToLeftLeg2);
669 DEFINE_STATIC_STRING(LeftLeg2ToVenaCava1);
670 // Liver
671 DEFINE_STATIC_STRING(Aorta1ToLiver1);
672 DEFINE_STATIC_STRING(Liver1ToGround);
673 DEFINE_STATIC_STRING(PortalVein1ToLiver1);
674 DEFINE_STATIC_STRING(Liver1ToLiver2);
675 DEFINE_STATIC_STRING(Liver2ToVenaCava1);
676 // Muscle
677 DEFINE_STATIC_STRING(Aorta1ToMuscle1);
678 DEFINE_STATIC_STRING(Muscle1ToGround);
679 DEFINE_STATIC_STRING(Muscle1ToMuscle2);
680 DEFINE_STATIC_STRING(Muscle2ToVenaCava1);
681 // Myocardium
682 DEFINE_STATIC_STRING(Aorta1ToMyocardium1);
683 DEFINE_STATIC_STRING(Myocardium1ToGround);
684 DEFINE_STATIC_STRING(Myocardium1ToMyocardium2);
685 DEFINE_STATIC_STRING(Myocardium2ToVenaCava1);
686 // Pericardium
687 DEFINE_STATIC_STRING(Pericardium1ToGround);
688 DEFINE_STATIC_STRING(GroundToPericardium1);
689 // Right Arm
690 DEFINE_STATIC_STRING(Aorta1ToRightArm1);
691 DEFINE_STATIC_STRING(RightArm1ToGround);
692 DEFINE_STATIC_STRING(RightArm1ToRightArm2);
693 DEFINE_STATIC_STRING(RightArm2ToVenaCava1);
694 // Right Kidney
695 DEFINE_STATIC_STRING(Aorta1ToRightKidney1);
696 DEFINE_STATIC_STRING(RightKidney1ToGround);
697 DEFINE_STATIC_STRING(RightKidney1ToRightKidney2);
698 DEFINE_STATIC_STRING(RightKidney2ToVenaCava1);
699 // Right Leg
700 DEFINE_STATIC_STRING(Aorta1ToRightLeg1);
701 DEFINE_STATIC_STRING(RightLeg1ToGround);
702 DEFINE_STATIC_STRING(RightLeg1ToRightLeg2);
703 DEFINE_STATIC_STRING(RightLeg2ToVenaCava1);
704 // Skin
705 DEFINE_STATIC_STRING(Aorta1ToSkin1);
706 DEFINE_STATIC_STRING(Skin1ToGround);
707 DEFINE_STATIC_STRING(Skin1ToSkin2);
708 DEFINE_STATIC_STRING(Skin2ToVenaCava1);
709 // Small Intestine
710 DEFINE_STATIC_STRING(Aorta1ToSmallIntestine1);
711 DEFINE_STATIC_STRING(SmallIntestine1ToGround);
712 DEFINE_STATIC_STRING(SmallIntestine1ToPortalVein1);
713 // Splanchnic
714 DEFINE_STATIC_STRING(Aorta1ToSplanchnic1);
715 DEFINE_STATIC_STRING(Splanchnic1ToGround);
716 DEFINE_STATIC_STRING(Splanchnic1ToPortalVein1);
717 // Spleen
718 DEFINE_STATIC_STRING(Aorta1ToSpleen1);
719 DEFINE_STATIC_STRING(Spleen1ToGround);
720 DEFINE_STATIC_STRING(Spleen1ToPortalVein1);
721 // Vena Cava
722 DEFINE_STATIC_STRING(VenaCava1ToGround);
723 DEFINE_STATIC_STRING(IVToVenaCava1);
724 };
725
726 class ExpandedCardiovascularNode
727 {
728 public:
729 DEFINE_STATIC_STRING(RightHeart1);
730 DEFINE_STATIC_STRING(RightHeart2);
731 DEFINE_STATIC_STRING(RightHeart3);
732
733 DEFINE_STATIC_STRING(MainPulmonaryArteries1);
734 DEFINE_STATIC_STRING(LeftIntermediatePulmonaryArteries1);
735 DEFINE_STATIC_STRING(LeftPulmonaryArteries1);
736 DEFINE_STATIC_STRING(RightIntermediatePulmonaryArteries1);
737 DEFINE_STATIC_STRING(RightPulmonaryArteries1);
738
739 DEFINE_STATIC_STRING(LeftPulmonaryCapillaries1);
740 DEFINE_STATIC_STRING(RightPulmonaryCapillaries1);
741
742 DEFINE_STATIC_STRING(LeftIntermediatePulmonaryVeins1);
743 DEFINE_STATIC_STRING(LeftPulmonaryVeins1);
744 DEFINE_STATIC_STRING(RightIntermediatePulmonaryVeins1);
745 DEFINE_STATIC_STRING(RightPulmonaryVeins1);
746
747 DEFINE_STATIC_STRING(LeftHeart1);
748 DEFINE_STATIC_STRING(LeftHeart2);
749 DEFINE_STATIC_STRING(LeftHeart3);
750
751 DEFINE_STATIC_STRING(Aorta1);
752 DEFINE_STATIC_STRING(Aorta2);
753 DEFINE_STATIC_STRING(Aorta3);
754 DEFINE_STATIC_STRING(Aorta4);
755 DEFINE_STATIC_STRING(Aorta5);
756
757 DEFINE_STATIC_STRING(AbdominalCavity1);
758
759 DEFINE_STATIC_STRING(Extracranial1);
760 DEFINE_STATIC_STRING(Extracranial2);
761 DEFINE_STATIC_STRING(Extracranial3);
762 DEFINE_STATIC_STRING(Intracranial1);
763 DEFINE_STATIC_STRING(Intracranial2);
764 DEFINE_STATIC_STRING(Intracranial3);
765
766 DEFINE_STATIC_STRING(Gut1);
767
768 DEFINE_STATIC_STRING(LargeIntestine1);
769
770 DEFINE_STATIC_STRING(Liver1);
771 DEFINE_STATIC_STRING(Liver2);
772 DEFINE_STATIC_STRING(PortalVein1);
773
774 DEFINE_STATIC_STRING(LeftArm1);
775 DEFINE_STATIC_STRING(LeftArm2);
776 DEFINE_STATIC_STRING(LeftArmBone1);
777 DEFINE_STATIC_STRING(LeftArmFat1);
778 DEFINE_STATIC_STRING(LeftArmMicroVasculature1);
779 DEFINE_STATIC_STRING(LeftArmMuscle1);
780 DEFINE_STATIC_STRING(LeftArmSkin1);
781
782 DEFINE_STATIC_STRING(LeftKidney1);
783 DEFINE_STATIC_STRING(LeftKidney2);
784 DEFINE_STATIC_STRING(LeftKidney3);
785
786 DEFINE_STATIC_STRING(LeftLeg1);
787 DEFINE_STATIC_STRING(LeftLeg2);
788 DEFINE_STATIC_STRING(LeftLegBone1);
789 DEFINE_STATIC_STRING(LeftLegFat1);
790 DEFINE_STATIC_STRING(LeftLegMicroVasculature1);
791 DEFINE_STATIC_STRING(LeftLegMuscle1);
792 DEFINE_STATIC_STRING(LeftLegSkin1);
793
794 DEFINE_STATIC_STRING(Myocardium1);
795 DEFINE_STATIC_STRING(Myocardium2);
796 DEFINE_STATIC_STRING(Myocardium3);
797
798 DEFINE_STATIC_STRING(Pericardium1);
799
800 DEFINE_STATIC_STRING(RightArm1);
801 DEFINE_STATIC_STRING(RightArm2);
802 DEFINE_STATIC_STRING(RightArmBone1);
803 DEFINE_STATIC_STRING(RightArmFat1);
804 DEFINE_STATIC_STRING(RightArmMicroVasculature1);
805 DEFINE_STATIC_STRING(RightArmMuscle1);
806 DEFINE_STATIC_STRING(RightArmSkin1);
807
808 DEFINE_STATIC_STRING(RightKidney1);
809 DEFINE_STATIC_STRING(RightKidney2);
810 DEFINE_STATIC_STRING(RightKidney3);
811
812 DEFINE_STATIC_STRING(RightLeg1);
813 DEFINE_STATIC_STRING(RightLeg2);
814 DEFINE_STATIC_STRING(RightLegBone1);
815 DEFINE_STATIC_STRING(RightLegFat1);
816 DEFINE_STATIC_STRING(RightLegMicroVasculature1);
817 DEFINE_STATIC_STRING(RightLegMuscle1);
818 DEFINE_STATIC_STRING(RightLegSkin1);
819
820 DEFINE_STATIC_STRING(SmallIntestine1);
821
822 DEFINE_STATIC_STRING(Splanchnic1);
823
824 DEFINE_STATIC_STRING(Spleen1);
825
826 DEFINE_STATIC_STRING(Torso1)
827 DEFINE_STATIC_STRING(Torso2)
828 DEFINE_STATIC_STRING(TorsoBone1);
829 DEFINE_STATIC_STRING(TorsoFat1);
830 DEFINE_STATIC_STRING(TorsoMicrovasculature1)
831 DEFINE_STATIC_STRING(TorsoMuscle1);
832 DEFINE_STATIC_STRING(TorsoSkin1);
833
834 DEFINE_STATIC_STRING(VenaCava1);
835 DEFINE_STATIC_STRING(VenaCava2);
836
837 DEFINE_STATIC_STRING(Ground);
838 };
839
840 class ExpandedCardiovascularPath
841 {
842 public:
843 // Heart and Lungs
844 DEFINE_STATIC_STRING(VenaCava1ToRightHeart2);
845 DEFINE_STATIC_STRING(RightHeart2ToRightHeart1);
846 DEFINE_STATIC_STRING(RightHeart1ToRightHeart3);
847 DEFINE_STATIC_STRING(RightHeart3ToGround);
848 DEFINE_STATIC_STRING(RightHeart1ToMainPulmonaryArteries1);
849 DEFINE_STATIC_STRING(MainPulmonaryArteries1ToRightIntermediatePulmonaryArteries1);
850 DEFINE_STATIC_STRING(RightIntermediatePulmonaryArteries1ToRightPulmonaryArteries1);
851 DEFINE_STATIC_STRING(RightPulmonaryArteries1ToRightPulmonaryVeins1);
852 DEFINE_STATIC_STRING(RightPulmonaryArteries1ToRightPulmonaryCapillaries1);
853 DEFINE_STATIC_STRING(RightPulmonaryArteries1ToGround);
854 DEFINE_STATIC_STRING(RightPulmonaryCapillaries1ToRightPulmonaryVeins1);
855 DEFINE_STATIC_STRING(RightPulmonaryCapillaries1ToGround);
856 DEFINE_STATIC_STRING(RightPulmonaryVeins1ToRightIntermediatePulmonaryVeins1);
857 DEFINE_STATIC_STRING(RightPulmonaryVeins1ToGround);
858 DEFINE_STATIC_STRING(RightIntermediatePulmonaryVeins1ToLeftHeart2);
859 DEFINE_STATIC_STRING(MainPulmonaryArteries1ToLeftIntermediatePulmonaryArteries1);
860 DEFINE_STATIC_STRING(LeftIntermediatePulmonaryArteries1ToLeftPulmonaryArteries1);
861 DEFINE_STATIC_STRING(LeftPulmonaryArteries1ToLeftPulmonaryVeins1);
862 DEFINE_STATIC_STRING(LeftPulmonaryArteries1ToLeftPulmonaryCapillaries1);
863 DEFINE_STATIC_STRING(LeftPulmonaryArteries1ToGround);
864 DEFINE_STATIC_STRING(LeftPulmonaryCapillaries1ToGround);
865 DEFINE_STATIC_STRING(LeftPulmonaryCapillaries1ToLeftPulmonaryVeins1);
866 DEFINE_STATIC_STRING(LeftPulmonaryVeins1ToLeftIntermediatePulmonaryVeins1);
867 DEFINE_STATIC_STRING(LeftPulmonaryVeins1ToGround);
868 DEFINE_STATIC_STRING(LeftIntermediatePulmonaryVeins1ToLeftHeart2)
869 DEFINE_STATIC_STRING(LeftHeart2ToLeftHeart1);
870 DEFINE_STATIC_STRING(LeftHeart1ToLeftHeart3);
871 DEFINE_STATIC_STRING(LeftHeart3ToGround);
872 DEFINE_STATIC_STRING(LeftHeart1ToAorta2);
873 DEFINE_STATIC_STRING(Aorta2ToAorta3);
874 DEFINE_STATIC_STRING(Aorta3ToAorta1);
875 DEFINE_STATIC_STRING(Aorta1ToAorta4);
876 DEFINE_STATIC_STRING(Aorta1ToAorta5);
877
878 // Abdominal Cavity
879 DEFINE_STATIC_STRING(GroundToAorta4);
880 DEFINE_STATIC_STRING(AbdominalCavity1ToGround);
881 DEFINE_STATIC_STRING(GroundToAbdominalCavity1);
882 // Brain
883 DEFINE_STATIC_STRING(Aorta5ToExtracranial1);
884 DEFINE_STATIC_STRING(Extracranial1ToGround);
885 DEFINE_STATIC_STRING(Extracranial2ToGround);
886 DEFINE_STATIC_STRING(Extracranial3ToGround);
887 DEFINE_STATIC_STRING(Extracranial1ToExtracranial2);
888 DEFINE_STATIC_STRING(Extracranial2ToExtracranial3);
889 DEFINE_STATIC_STRING(Extracranial3ToVenaCava2);
890 DEFINE_STATIC_STRING(Aorta5ToIntracranial1);
891 DEFINE_STATIC_STRING(Intracranial1ToGround);
892 DEFINE_STATIC_STRING(Intracranial2ToGround);
893 DEFINE_STATIC_STRING(Intracranial3ToGround);
894 DEFINE_STATIC_STRING(Intracranial1ToIntracranial2);
895 DEFINE_STATIC_STRING(Intracranial2ToIntracranial3);
896 DEFINE_STATIC_STRING(Intracranial3ToVenaCava2);
897 // Gut
898 DEFINE_STATIC_STRING(Aorta5ToGut1);
899 DEFINE_STATIC_STRING(Gut1ToGround);
900 // Large Intestine
901 DEFINE_STATIC_STRING(Gut1ToLargeIntestine1);
902 DEFINE_STATIC_STRING(LargeIntestine1ToGround);
903 DEFINE_STATIC_STRING(LargeIntestine1ToPortalVein1);
904 // Left Arm
905 DEFINE_STATIC_STRING(Aorta5ToLeftArm1);
906 DEFINE_STATIC_STRING(LeftArm1ToGround);
907 DEFINE_STATIC_STRING(LeftArm2ToGround);
908 DEFINE_STATIC_STRING(LeftArm1ToLeftArmBone1);
909 DEFINE_STATIC_STRING(LeftArmBone1ToGround);
910 DEFINE_STATIC_STRING(LeftArmBone1ToLeftArm2);
911 DEFINE_STATIC_STRING(LeftArm1ToLeftArmFat1);
912 DEFINE_STATIC_STRING(LeftArmFat1ToGround);
913 DEFINE_STATIC_STRING(LeftArmFat1ToLeftArm2);
914 DEFINE_STATIC_STRING(LeftArm1ToLeftArmMicrovasculature1);
915 DEFINE_STATIC_STRING(LeftArmMicrovasculature1ToGround);
916 DEFINE_STATIC_STRING(LeftArmMicrovasculature1ToLeftArm2);
917 DEFINE_STATIC_STRING(LeftArm1ToLeftArmMuscle1);
918 DEFINE_STATIC_STRING(LeftArmMuscle1ToGround);
919 DEFINE_STATIC_STRING(LeftArmMuscle1ToLeftArm2);
920 DEFINE_STATIC_STRING(LeftArm1ToLeftArmSkin1);
921 DEFINE_STATIC_STRING(LeftArmSkin1ToGround);
922 DEFINE_STATIC_STRING(LeftArmSkin1ToLeftArm2);
923 DEFINE_STATIC_STRING(LeftArm2ToVenaCava2);
924 // Left Kidney
925 DEFINE_STATIC_STRING(Aorta5ToLeftKidney1);
926 DEFINE_STATIC_STRING(LeftKidney1ToLeftKidney2);
927 DEFINE_STATIC_STRING(LeftKidney1ToGround);
928 DEFINE_STATIC_STRING(LeftKidney2ToGround);
929 DEFINE_STATIC_STRING(LeftKidney3ToGround);
930 DEFINE_STATIC_STRING(LeftKidney2ToLeftKidney3);
931 DEFINE_STATIC_STRING(LeftKidney3ToVenaCava2);
932 // Left Leg
933 DEFINE_STATIC_STRING(Aorta5ToLeftLeg1);
934 DEFINE_STATIC_STRING(LeftLeg1ToGround);
935 DEFINE_STATIC_STRING(LeftLeg2ToGround);
936 DEFINE_STATIC_STRING(LeftLeg1ToLeftLegBone1);
937 DEFINE_STATIC_STRING(LeftLegBone1ToGround);
938 DEFINE_STATIC_STRING(LeftLegBone1ToLeftLeg2);
939 DEFINE_STATIC_STRING(LeftLeg1ToLeftLegFat1);
940 DEFINE_STATIC_STRING(LeftLegFat1ToGround);
941 DEFINE_STATIC_STRING(LeftLegFat1ToLeftLeg2);
942 DEFINE_STATIC_STRING(LeftLeg1ToLeftLegMicrovasculature1);
943 DEFINE_STATIC_STRING(LeftLegMicrovasculature1ToGround);
944 DEFINE_STATIC_STRING(LeftLegMicrovasculature1ToLeftLeg2);
945 DEFINE_STATIC_STRING(LeftLeg1ToLeftLegMuscle1);
946 DEFINE_STATIC_STRING(LeftLegMuscle1ToGround);
947 DEFINE_STATIC_STRING(LeftLegMuscle1ToLeftLeg2);
948 DEFINE_STATIC_STRING(LeftLeg1ToLeftLegSkin1);
949 DEFINE_STATIC_STRING(LeftLegSkin1ToGround);
950 DEFINE_STATIC_STRING(LeftLegSkin1ToLeftLeg2);
951 DEFINE_STATIC_STRING(LeftLeg2ToVenaCava2);
952 // Liver
953 DEFINE_STATIC_STRING(Gut1ToLiver1);
954 DEFINE_STATIC_STRING(Liver1ToGround);
955 DEFINE_STATIC_STRING(Liver2ToGround);
956 DEFINE_STATIC_STRING(PortalVein1ToLiver1);
957 DEFINE_STATIC_STRING(Liver1ToLiver2);
958 DEFINE_STATIC_STRING(Liver2ToVenaCava2);
959 // Myocardium
960 DEFINE_STATIC_STRING(Aorta5ToMyocardium1);
961 DEFINE_STATIC_STRING(Myocardium1ToMyocardium2);
962 DEFINE_STATIC_STRING(Myocardium1ToGround);
963 DEFINE_STATIC_STRING(Myocardium2ToGround);
964 DEFINE_STATIC_STRING(Myocardium3ToGround);
965 DEFINE_STATIC_STRING(Myocardium2ToMyocardium3);
966 DEFINE_STATIC_STRING(Myocardium3ToVenaCava2);
967 // Pericardium
968 DEFINE_STATIC_STRING(Pericardium1ToGround);
969 DEFINE_STATIC_STRING(GroundToPericardium1);
970 // Right Arm
971 DEFINE_STATIC_STRING(Aorta5ToRightArm1);
972 DEFINE_STATIC_STRING(RightArm1ToGround);
973 DEFINE_STATIC_STRING(RightArm2ToGround);
974 DEFINE_STATIC_STRING(RightArm1ToRightArmBone1);
975 DEFINE_STATIC_STRING(RightArmBone1ToGround);
976 DEFINE_STATIC_STRING(RightArmBone1ToRightArm2);
977 DEFINE_STATIC_STRING(RightArm1ToRightArmFat1);
978 DEFINE_STATIC_STRING(RightArmFat1ToGround);
979 DEFINE_STATIC_STRING(RightArmFat1ToRightArm2);
980 DEFINE_STATIC_STRING(RightArm1ToRightArmMicrovasculature1);
981 DEFINE_STATIC_STRING(RightArmMicrovasculature1ToGround);
982 DEFINE_STATIC_STRING(RightArmMicrovasculature1ToRightArm2);
983 DEFINE_STATIC_STRING(RightArm1ToRightArmMuscle1);
984 DEFINE_STATIC_STRING(RightArmMuscle1ToGround);
985 DEFINE_STATIC_STRING(RightArmMuscle1ToRightArm2);
986 DEFINE_STATIC_STRING(RightArm1ToRightArmSkin1);
987 DEFINE_STATIC_STRING(RightArmSkin1ToGround);
988 DEFINE_STATIC_STRING(RightArmSkin1ToRightArm2);
989 DEFINE_STATIC_STRING(RightArm2ToVenaCava2);
990 // Right Kidney
991 DEFINE_STATIC_STRING(Aorta5ToRightKidney1);
992 DEFINE_STATIC_STRING(RightKidney1ToRightKidney2);
993 DEFINE_STATIC_STRING(RightKidney1ToGround);
994 DEFINE_STATIC_STRING(RightKidney2ToGround);
995 DEFINE_STATIC_STRING(RightKidney3ToGround);
996 DEFINE_STATIC_STRING(RightKidney2ToRightKidney3);
997 DEFINE_STATIC_STRING(RightKidney3ToVenaCava2);
998 // Right Leg
999 DEFINE_STATIC_STRING(Aorta5ToRightLeg1);
1000 DEFINE_STATIC_STRING(RightLeg1ToGround);
1001 DEFINE_STATIC_STRING(RightLeg2ToGround);
1002 DEFINE_STATIC_STRING(RightLeg1ToRightLegBone1);
1003 DEFINE_STATIC_STRING(RightLegBone1ToGround);
1004 DEFINE_STATIC_STRING(RightLegBone1ToRightLeg2);
1005 DEFINE_STATIC_STRING(RightLeg1ToRightLegFat1);
1006 DEFINE_STATIC_STRING(RightLegFat1ToGround);
1007 DEFINE_STATIC_STRING(RightLegFat1ToRightLeg2);
1008 DEFINE_STATIC_STRING(RightLeg1ToRightLegMicrovasculature1);
1009 DEFINE_STATIC_STRING(RightLegMicrovasculature1ToGround);
1010 DEFINE_STATIC_STRING(RightLegMicrovasculature1ToRightLeg2);
1011 DEFINE_STATIC_STRING(RightLeg1ToRightLegMuscle1);
1012 DEFINE_STATIC_STRING(RightLegMuscle1ToGround);
1013 DEFINE_STATIC_STRING(RightLegMuscle1ToRightLeg2);
1014 DEFINE_STATIC_STRING(RightLeg1ToRightLegSkin1);
1015 DEFINE_STATIC_STRING(RightLegSkin1ToGround);
1016 DEFINE_STATIC_STRING(RightLegSkin1ToRightLeg2);
1017 DEFINE_STATIC_STRING(RightLeg2ToVenaCava2);
1018 // Small Intestine
1019 DEFINE_STATIC_STRING(Gut1ToSmallIntestine1);
1020 DEFINE_STATIC_STRING(SmallIntestine1ToGround);
1021 DEFINE_STATIC_STRING(SmallIntestine1ToPortalVein1);
1022 // Splanchnic
1023 DEFINE_STATIC_STRING(Gut1ToSplanchnic1);
1024 DEFINE_STATIC_STRING(Splanchnic1ToGround);
1025 DEFINE_STATIC_STRING(Splanchnic1ToPortalVein1);
1026 // Spleen
1027 DEFINE_STATIC_STRING(Gut1ToSpleen1);
1028 DEFINE_STATIC_STRING(Spleen1ToGround);
1029 DEFINE_STATIC_STRING(Spleen1ToPortalVein1);
1030 // Torso
1031 DEFINE_STATIC_STRING(Aorta5ToTorso1);
1032 DEFINE_STATIC_STRING(Torso1ToGround);
1033 DEFINE_STATIC_STRING(Torso2ToGround);
1034 DEFINE_STATIC_STRING(Torso1ToTorsoBone1);
1035 DEFINE_STATIC_STRING(TorsoBone1ToGround);
1036 DEFINE_STATIC_STRING(TorsoBone1ToTorso2);
1037 DEFINE_STATIC_STRING(Torso1ToTorsoFat1);
1038 DEFINE_STATIC_STRING(TorsoFat1ToGround);
1039 DEFINE_STATIC_STRING(TorsoFat1ToTorso2);
1040 DEFINE_STATIC_STRING(Torso1ToTorsoMicrovasculature1);
1041 DEFINE_STATIC_STRING(TorsoMicrovasculature1ToGround);
1042 DEFINE_STATIC_STRING(TorsoMicrovasculature1ToTorso2);
1043 DEFINE_STATIC_STRING(Torso1ToTorsoMuscle1);
1044 DEFINE_STATIC_STRING(TorsoMuscle1ToGround);
1045 DEFINE_STATIC_STRING(TorsoMuscle1ToTorso2);
1046 DEFINE_STATIC_STRING(Torso1ToTorsoSkin1);
1047 DEFINE_STATIC_STRING(TorsoSkin1ToGround);
1048 DEFINE_STATIC_STRING(TorsoSkin1ToTorso2);
1049 DEFINE_STATIC_STRING(Torso2ToVenaCava2);
1050 // Vena Cava
1051 DEFINE_STATIC_STRING(VenaCava2ToVenaCava1);
1052 DEFINE_STATIC_STRING(VenaCava1ToGround);
1053 //DEFINE_STATIC_STRING(VenaCava2ToGround);
1054 DEFINE_STATIC_STRING(IVToVenaCava1);
1055 };
1056
1057
1059 // Cerebrospinal Fluid Circuit Enums //
1061
1062 class CerebrospinalFluidNode
1063 {
1064 public:
1065 DEFINE_STATIC_STRING(VascularCSFBarrier);
1066 DEFINE_STATIC_STRING(IntracranialSpace1);
1067 DEFINE_STATIC_STRING(IntracranialSpace2);
1068 };
1069
1070 class CerebrospinalFluidPath
1071 {
1072 public:
1073
1074 DEFINE_STATIC_STRING(IntracranialSpace2ToGround);
1075 DEFINE_STATIC_STRING(GroundToIntracranialSpace1);
1076 DEFINE_STATIC_STRING(Brain1ToVascularCSFBarrier);
1077 DEFINE_STATIC_STRING(VascularCSFBarrierToIntracranialSpace1);
1078 DEFINE_STATIC_STRING(IntracranialSpace1ToIntracranialSpace2);
1079 };
1080
1081 class TissueNode
1082 {
1083 public:
1084 DEFINE_STATIC_STRING(BoneT1);
1085 DEFINE_STATIC_STRING(BoneT2);
1086 DEFINE_STATIC_STRING(BoneT3);
1087 DEFINE_STATIC_STRING(BrainT1);
1088 DEFINE_STATIC_STRING(BrainT2);
1089 DEFINE_STATIC_STRING(BrainT3);
1090 DEFINE_STATIC_STRING(FatT1);
1091 DEFINE_STATIC_STRING(FatT2);
1092 DEFINE_STATIC_STRING(FatT3);
1093 DEFINE_STATIC_STRING(GutT1);
1094 DEFINE_STATIC_STRING(GutT2);
1095 DEFINE_STATIC_STRING(GutT3);
1096 DEFINE_STATIC_STRING(LiverT1);
1097 DEFINE_STATIC_STRING(LiverT2);
1098 DEFINE_STATIC_STRING(LiverT3);
1099 DEFINE_STATIC_STRING(LeftKidneyT1);
1100 DEFINE_STATIC_STRING(LeftKidneyT2);
1101 DEFINE_STATIC_STRING(LeftKidneyT3);
1102 DEFINE_STATIC_STRING(LeftLungT1);
1103 DEFINE_STATIC_STRING(LeftLungT2);
1104 DEFINE_STATIC_STRING(LeftLungT3);
1105 DEFINE_STATIC_STRING(Lymph);
1106 DEFINE_STATIC_STRING(MuscleT1);
1107 DEFINE_STATIC_STRING(MuscleT2);
1108 DEFINE_STATIC_STRING(MuscleT3);
1109 DEFINE_STATIC_STRING(MyocardiumT1);
1110 DEFINE_STATIC_STRING(MyocardiumT2);
1111 DEFINE_STATIC_STRING(MyocardiumT3);
1112 DEFINE_STATIC_STRING(RightLungT1);
1113 DEFINE_STATIC_STRING(RightLungT2);
1114 DEFINE_STATIC_STRING(RightLungT3);
1115 DEFINE_STATIC_STRING(RightKidneyT1);
1116 DEFINE_STATIC_STRING(RightKidneyT2);
1117 DEFINE_STATIC_STRING(RightKidneyT3);
1118 DEFINE_STATIC_STRING(SkinT1);
1119 DEFINE_STATIC_STRING(SkinT2);
1120 DEFINE_STATIC_STRING(SkinT3);
1121 DEFINE_STATIC_STRING(SpleenT1);
1122 DEFINE_STATIC_STRING(SpleenT2);
1123 DEFINE_STATIC_STRING(SpleenT3);
1124 };
1125
1126 class TissuePath
1127 {
1128 public:
1129 DEFINE_STATIC_STRING(Bone1ToBoneT2);
1130 DEFINE_STATIC_STRING(BoneT2ToBoneT1);
1131 DEFINE_STATIC_STRING(BoneT1ToBoneT3);
1132 DEFINE_STATIC_STRING(GroundToBoneT3);
1133 DEFINE_STATIC_STRING(BoneT1ToLymph);
1134
1135 DEFINE_STATIC_STRING(Brain1ToBrainT2);
1136 DEFINE_STATIC_STRING(BrainT2ToBrainT1);
1137 DEFINE_STATIC_STRING(BrainT1ToBrainT3);
1138 DEFINE_STATIC_STRING(GroundToBrainT3);
1139 DEFINE_STATIC_STRING(BrainT1ToLymph);
1140
1141 DEFINE_STATIC_STRING(Fat1ToFatT2);
1142 DEFINE_STATIC_STRING(FatT2ToFatT1);
1143 DEFINE_STATIC_STRING(FatT1ToFatT3);
1144 DEFINE_STATIC_STRING(GroundToFatT3);
1145 DEFINE_STATIC_STRING(FatT1ToLymph);
1146
1147 DEFINE_STATIC_STRING(SmallIntestine1ToGutT2);
1148 DEFINE_STATIC_STRING(LargeIntestine1ToGutT2);
1149 DEFINE_STATIC_STRING(Splanchnic1ToGutT2);
1150 DEFINE_STATIC_STRING(GutT2ToGutT1);
1151 DEFINE_STATIC_STRING(GutT1ToGutT3);
1152 DEFINE_STATIC_STRING(GroundToGutT3);
1153 DEFINE_STATIC_STRING(GutT1ToLymph);
1154
1155 DEFINE_STATIC_STRING(Liver1ToLiverT2);
1156 DEFINE_STATIC_STRING(LiverT2ToLiverT1);
1157 DEFINE_STATIC_STRING(LiverT1ToLiverT3);
1158 DEFINE_STATIC_STRING(GroundToLiverT3);
1159 DEFINE_STATIC_STRING(LiverT1ToLymph);
1160
1161 DEFINE_STATIC_STRING(LeftKidney1ToLeftKidneyT2);
1162 DEFINE_STATIC_STRING(LeftKidneyT2ToLeftKidneyT1);
1163 DEFINE_STATIC_STRING(LeftKidneyT1ToLeftKidneyT3);
1164 DEFINE_STATIC_STRING(GroundToLeftKidneyT3);
1165 DEFINE_STATIC_STRING(LeftKidneyT1ToLymph);
1166
1167 DEFINE_STATIC_STRING(LeftLung1ToLeftLungT2);
1168 DEFINE_STATIC_STRING(LeftLungT2ToLeftLungT1);
1169 DEFINE_STATIC_STRING(LeftLungT1ToLeftLungT3);
1170 DEFINE_STATIC_STRING(GroundToLeftLungT3);
1171 DEFINE_STATIC_STRING(LeftLungT1ToLymph);
1172
1173 DEFINE_STATIC_STRING(LymphToVenaCava1);
1174
1175 DEFINE_STATIC_STRING(Muscle1ToMuscleT2);
1176 DEFINE_STATIC_STRING(MuscleT2ToMuscleT1);
1177 DEFINE_STATIC_STRING(MuscleT1ToMuscleT3);
1178 DEFINE_STATIC_STRING(GroundToMuscleT3);
1179 DEFINE_STATIC_STRING(MuscleT1ToLymph);
1180
1181 DEFINE_STATIC_STRING(Myocardium1ToMyocardiumT2);
1182 DEFINE_STATIC_STRING(MyocardiumT2ToMyocardiumT1);
1183 DEFINE_STATIC_STRING(MyocardiumT1ToMyocardiumT3);
1184 DEFINE_STATIC_STRING(GroundToMyocardiumT3);
1185 DEFINE_STATIC_STRING(MyocardiumT1ToLymph);
1186
1187 DEFINE_STATIC_STRING(RightLung1ToRightLungT2);
1188 DEFINE_STATIC_STRING(RightLungT2ToRightLungT1);
1189 DEFINE_STATIC_STRING(RightLungT1ToRightLungT3);
1190 DEFINE_STATIC_STRING(GroundToRightLungT3);
1191 DEFINE_STATIC_STRING(RightLungT1ToLymph);
1192
1193 DEFINE_STATIC_STRING(RightKidney1ToRightKidneyT2);
1194 DEFINE_STATIC_STRING(RightKidneyT2ToRightKidneyT1);
1195 DEFINE_STATIC_STRING(RightKidneyT1ToRightKidneyT3);
1196 DEFINE_STATIC_STRING(GroundToRightKidneyT3);
1197 DEFINE_STATIC_STRING(RightKidneyT1ToLymph);
1198
1199 DEFINE_STATIC_STRING(Skin1ToSkinT2);
1200 DEFINE_STATIC_STRING(SkinT2ToSkinT1);
1201 DEFINE_STATIC_STRING(SkinT1ToSkinT3);
1202 DEFINE_STATIC_STRING(GroundToSkinT3);
1203 DEFINE_STATIC_STRING(SkinT1ToLymph);
1204 DEFINE_STATIC_STRING(SkinSweating);
1205
1206 DEFINE_STATIC_STRING(Spleen1ToSpleenT2);
1207 DEFINE_STATIC_STRING(SpleenT2ToSpleenT1);
1208 DEFINE_STATIC_STRING(SpleenT1ToSpleenT3);
1209 DEFINE_STATIC_STRING(GroundToSpleenT3);
1210 DEFINE_STATIC_STRING(SpleenT1ToLymph);
1211 };
1212
1213 class ExpandedCardiovascularTissuePath
1214 {
1215 public:
1216 DEFINE_STATIC_STRING(TorsoBone1ToBoneT2);
1217 DEFINE_STATIC_STRING(LeftArmBone1ToBoneT2);
1218 DEFINE_STATIC_STRING(LeftLegBone1ToBoneT2);
1219 DEFINE_STATIC_STRING(RightArmBone1ToBoneT2);
1220 DEFINE_STATIC_STRING(RightLegBone1ToBoneT2);
1221 DEFINE_STATIC_STRING(BoneT2ToBoneT1);
1222 DEFINE_STATIC_STRING(BoneT1ToBoneT3);
1223 DEFINE_STATIC_STRING(GroundToBoneT3);
1224 DEFINE_STATIC_STRING(BoneT1ToLymph);
1225
1226 DEFINE_STATIC_STRING(Intracranial2ToBrainT2);
1227 DEFINE_STATIC_STRING(BrainT2ToBrainT1);
1228 DEFINE_STATIC_STRING(BrainT1ToBrainT3);
1229 DEFINE_STATIC_STRING(GroundToBrainT3);
1230 DEFINE_STATIC_STRING(BrainT1ToLymph);
1231
1232 DEFINE_STATIC_STRING(TorsoFat1ToFatT2);
1233 DEFINE_STATIC_STRING(LeftArmFat1ToFatT2);
1234 DEFINE_STATIC_STRING(LeftLegFat1ToFatT2);
1235 DEFINE_STATIC_STRING(RightArmFat1ToFatT2);
1236 DEFINE_STATIC_STRING(RightLegFat1ToFatT2);
1237 DEFINE_STATIC_STRING(FatT2ToFatT1);
1238 DEFINE_STATIC_STRING(FatT1ToFatT3);
1239 DEFINE_STATIC_STRING(GroundToFatT3);
1240 DEFINE_STATIC_STRING(FatT1ToLymph);
1241
1242 DEFINE_STATIC_STRING(SmallIntestine1ToGutT2);
1243 DEFINE_STATIC_STRING(LargeIntestine1ToGutT2);
1244 DEFINE_STATIC_STRING(Splanchnic1ToGutT2);
1245 DEFINE_STATIC_STRING(GutT2ToGutT1);
1246 DEFINE_STATIC_STRING(GutT1ToGutT3);
1247 DEFINE_STATIC_STRING(GroundToGutT3);
1248 DEFINE_STATIC_STRING(GutT1ToLymph);
1249
1250 DEFINE_STATIC_STRING(Liver1ToLiverT2);
1251 DEFINE_STATIC_STRING(LiverT2ToLiverT1);
1252 DEFINE_STATIC_STRING(LiverT1ToLiverT3);
1253 DEFINE_STATIC_STRING(GroundToLiverT3);
1254 DEFINE_STATIC_STRING(LiverT1ToLymph);
1255
1256 DEFINE_STATIC_STRING(LeftKidney2ToLeftKidneyT2);
1257 DEFINE_STATIC_STRING(LeftKidneyT2ToLeftKidneyT1);
1258 DEFINE_STATIC_STRING(LeftKidneyT1ToLeftKidneyT3);
1259 DEFINE_STATIC_STRING(GroundToLeftKidneyT3);
1260 DEFINE_STATIC_STRING(LeftKidneyT1ToLymph);
1261
1262 DEFINE_STATIC_STRING(LeftLung1ToLeftLungT2);
1263 DEFINE_STATIC_STRING(LeftLungT2ToLeftLungT1);
1264 DEFINE_STATIC_STRING(LeftLungT1ToLeftLungT3);
1265 DEFINE_STATIC_STRING(GroundToLeftLungT3);
1266 DEFINE_STATIC_STRING(LeftLungT1ToLymph);
1267
1268 DEFINE_STATIC_STRING(LymphToVenaCava);
1269
1270 DEFINE_STATIC_STRING(TorsoMuscle1ToMuscleT2);
1271 DEFINE_STATIC_STRING(LeftArmMuscle1ToMuscleT2);
1272 DEFINE_STATIC_STRING(LeftLegMuscle1ToMuscleT2);
1273 DEFINE_STATIC_STRING(RightArmMuscle1ToMuscleT2);
1274 DEFINE_STATIC_STRING(RightLegMuscle1ToMuscleT2);
1275 DEFINE_STATIC_STRING(MuscleT2ToMuscleT1);
1276 DEFINE_STATIC_STRING(MuscleT1ToMuscleT3);
1277 DEFINE_STATIC_STRING(GroundToMuscleT3);
1278 DEFINE_STATIC_STRING(MuscleT1ToLymph);
1279
1280 DEFINE_STATIC_STRING(Myocardium2ToMyocardiumT2);
1281 DEFINE_STATIC_STRING(MyocardiumT2ToMyocardiumT1);
1282 DEFINE_STATIC_STRING(MyocardiumT1ToMyocardiumT3);
1283 DEFINE_STATIC_STRING(GroundToMyocardiumT3);
1284 DEFINE_STATIC_STRING(MyocardiumT1ToLymph);
1285
1286 DEFINE_STATIC_STRING(RightLung1ToRightLungT2);
1287 DEFINE_STATIC_STRING(RightLungT2ToRightLungT1);
1288 DEFINE_STATIC_STRING(RightLungT1ToRightLungT3);
1289 DEFINE_STATIC_STRING(GroundToRightLungT3);
1290 DEFINE_STATIC_STRING(RightLungT1ToLymph);
1291
1292 DEFINE_STATIC_STRING(RightKidney2ToRightKidneyT2);
1293 DEFINE_STATIC_STRING(RightKidneyT2ToRightKidneyT1);
1294 DEFINE_STATIC_STRING(RightKidneyT1ToRightKidneyT3);
1295 DEFINE_STATIC_STRING(GroundToRightKidneyT3);
1296 DEFINE_STATIC_STRING(RightKidneyT1ToLymph);
1297
1298 DEFINE_STATIC_STRING(TorsoSkin1ToSkinT2);
1299 DEFINE_STATIC_STRING(LeftArmSkin1ToSkinT2);
1300 DEFINE_STATIC_STRING(LeftLegSkin1ToSkinT2);
1301 DEFINE_STATIC_STRING(RightArmSkin1ToSkinT2);
1302 DEFINE_STATIC_STRING(RightLegSkin1ToSkinT2);
1303 DEFINE_STATIC_STRING(SkinT2ToSkinT1);
1304 DEFINE_STATIC_STRING(SkinT1ToSkinT3);
1305 DEFINE_STATIC_STRING(GroundToSkinT3);
1306 DEFINE_STATIC_STRING(SkinT1ToLymph);
1307 DEFINE_STATIC_STRING(SkinSweating);
1308
1309 DEFINE_STATIC_STRING(Spleen1ToSpleenT2);
1310 DEFINE_STATIC_STRING(SpleenT2ToSpleenT1);
1311 DEFINE_STATIC_STRING(SpleenT1ToSpleenT3);
1312 DEFINE_STATIC_STRING(GroundToSpleenT3);
1313 DEFINE_STATIC_STRING(SpleenT1ToLymph);
1314 };
1315
1316 class RenalNode
1317 {
1318 public:
1319 // Blood
1320 DEFINE_STATIC_STRING(RightAortaConnection);
1321 DEFINE_STATIC_STRING(RightRenalArtery);
1322 DEFINE_STATIC_STRING(RightAfferentArteriole);
1323 DEFINE_STATIC_STRING(RightGlomerularCapillaries);
1324 DEFINE_STATIC_STRING(RightNetGlomerularCapillaries);
1325 DEFINE_STATIC_STRING(RightEfferentArteriole);
1326 DEFINE_STATIC_STRING(RightPeritubularCapillaries);
1327 DEFINE_STATIC_STRING(RightNetPeritubularCapillaries);
1328 DEFINE_STATIC_STRING(RightRenalVein);
1329 DEFINE_STATIC_STRING(RightVenaCavaConnection);
1330 // Urine
1331 DEFINE_STATIC_STRING(RightBowmansCapsules);
1332 DEFINE_STATIC_STRING(RightNetBowmansCapsules);
1333 DEFINE_STATIC_STRING(RightTubules);
1334 DEFINE_STATIC_STRING(RightNetTubules);
1335 DEFINE_STATIC_STRING(RightUreter);
1336
1337 // Blood
1338 DEFINE_STATIC_STRING(LeftAortaConnection);
1339 DEFINE_STATIC_STRING(LeftRenalArtery);
1340 DEFINE_STATIC_STRING(LeftAfferentArteriole);
1341 DEFINE_STATIC_STRING(LeftGlomerularCapillaries);
1342 DEFINE_STATIC_STRING(LeftNetGlomerularCapillaries);
1343 DEFINE_STATIC_STRING(LeftEfferentArteriole);
1344 DEFINE_STATIC_STRING(LeftPeritubularCapillaries);
1345 DEFINE_STATIC_STRING(LeftNetPeritubularCapillaries);
1346 DEFINE_STATIC_STRING(LeftRenalVein);
1347 DEFINE_STATIC_STRING(LeftVenaCavaConnection);
1348 // Urine
1349 DEFINE_STATIC_STRING(LeftNetBowmansCapsules);
1350 DEFINE_STATIC_STRING(LeftBowmansCapsules);
1351 DEFINE_STATIC_STRING(LeftTubules);
1352 DEFINE_STATIC_STRING(LeftNetTubules);
1353 DEFINE_STATIC_STRING(LeftUreter);
1354
1355 DEFINE_STATIC_STRING(Bladder);
1356
1357 DEFINE_STATIC_STRING(Ground);
1358 };
1359
1360 class RenalPath
1361 {
1362 public:
1363 DEFINE_STATIC_STRING(RightAortaConnectionToRenalArtery);
1364 DEFINE_STATIC_STRING(RightRenalArteryToAfferentArteriole);
1365 DEFINE_STATIC_STRING(RightRenalArteryCompliance);
1366 DEFINE_STATIC_STRING(RightAfferentArterioleToGlomerularCapillaries);
1367 DEFINE_STATIC_STRING(RightGlomerularCapillariesToEfferentArteriole);
1368 DEFINE_STATIC_STRING(RightGlomerularCapillariesCompliance);
1369 DEFINE_STATIC_STRING(RightEfferentArterioleToPeritubularCapillaries);
1370 DEFINE_STATIC_STRING(RightPeritubularCapillariesToRenalVein);
1371 DEFINE_STATIC_STRING(RightRenalVeinToVenaCavaConnection);
1372 DEFINE_STATIC_STRING(RightRenalVeinCompliance);
1373
1374 DEFINE_STATIC_STRING(RightGlomerularCapillariesToNetGlomerularCapillaries);
1375 DEFINE_STATIC_STRING(RightNetGlomerularCapillariesToNetBowmansCapsules);
1376 DEFINE_STATIC_STRING(RightBowmansCapsulesToNetBowmansCapsules);
1377 DEFINE_STATIC_STRING(RightBowmansCapsulesToTubules);
1378 DEFINE_STATIC_STRING(RightTubulesToUreter);
1379 DEFINE_STATIC_STRING(RightTubulesToNetTubules);
1380 DEFINE_STATIC_STRING(RightNetTubulesToNetPeritubularCapillaries);
1381 DEFINE_STATIC_STRING(RightPeritubularCapillariesToNetPeritubularCapillaries);
1382 DEFINE_STATIC_STRING(RightUreterToBladder);
1383
1384 DEFINE_STATIC_STRING(LeftAortaConnectionToRenalArtery);
1385 DEFINE_STATIC_STRING(LeftRenalArteryToAfferentArteriole);
1386 DEFINE_STATIC_STRING(LeftRenalArteryCompliance);
1387 DEFINE_STATIC_STRING(LeftAfferentArterioleToGlomerularCapillaries);
1388 DEFINE_STATIC_STRING(LeftGlomerularCapillariesToEfferentArteriole);
1389 DEFINE_STATIC_STRING(LeftGlomerularCapillariesCompliance);
1390 DEFINE_STATIC_STRING(LeftEfferentArterioleToPeritubularCapillaries);
1391 DEFINE_STATIC_STRING(LeftPeritubularCapillariesToRenalVein);
1392 DEFINE_STATIC_STRING(LeftRenalVeinToVenaCavaConnection);
1393 DEFINE_STATIC_STRING(LeftRenalVeinCompliance);
1394
1395 DEFINE_STATIC_STRING(LeftGlomerularCapillariesToNetGlomerularCapillaries);
1396 DEFINE_STATIC_STRING(LeftNetGlomerularCapillariesToNetBowmansCapsules);
1397 DEFINE_STATIC_STRING(LeftBowmansCapsulesToNetBowmansCapsules);
1398 DEFINE_STATIC_STRING(LeftBowmansCapsulesToTubules);
1399 DEFINE_STATIC_STRING(LeftTubulesToUreter);
1400 DEFINE_STATIC_STRING(LeftTubulesToNetTubules);
1401 DEFINE_STATIC_STRING(LeftNetTubulesToNetPeritubularCapillaries);
1402 DEFINE_STATIC_STRING(LeftPeritubularCapillariesToNetPeritubularCapillaries);
1403 DEFINE_STATIC_STRING(LeftUreterToBladder);
1404
1405 DEFINE_STATIC_STRING(BladderToGroundPressure);
1406 DEFINE_STATIC_STRING(BladderToGroundUrinate);
1407 };
1408
1409 class DigestionNode
1410 {
1411 public:
1412 DEFINE_STATIC_STRING(GutChyme);
1413 };
1414
1415 class DigestionPath
1416 {
1417 public:
1418 DEFINE_STATIC_STRING(GutChymeToSmallIntestineVascular);
1419 };
1420
1421 class ECMONode
1422 {
1423 public:
1424 DEFINE_STATIC_STRING(BloodSamplingPort);
1425 DEFINE_STATIC_STRING(Oxygenator);
1426 };
1427
1428 class ECMOPath
1429 {
1430 public:
1431 DEFINE_STATIC_STRING(VascularToBloodSamplingPort);
1432 DEFINE_STATIC_STRING(BloodSamplingPortToGround);
1433 DEFINE_STATIC_STRING(GroundToOxygenator);
1434 DEFINE_STATIC_STRING(OxygenatorToVasculature);
1435 };
1436END_NAMESPACE
Definition: SECircuitManager.h:38
Definition: SEFluidCircuit.h:12
Definition: SEThermalCircuit.h:12
Manages all circuits associated with all Pulse systems/equipement.
Definition: CircuitManager.h:18
SEFluidCircuit * m_CombinedRespiratorySimpleMaskCircuit
Definition: CircuitManager.h:83
SEFluidCircuit * m_MechanicalVentilatorCircuit
Definition: CircuitManager.h:74
SEFluidCircuit * m_RenalCircuit
Definition: CircuitManager.h:68
SEFluidCircuit * m_CardiovascularCircuit
Definition: CircuitManager.h:67
SEFluidCircuit * m_RespiratoryCircuit
Definition: CircuitManager.h:70
SEFluidCircuit * m_CombinedRespiratoryMechanicalVentilationCircuit
Definition: CircuitManager.h:85
SEThermalCircuit * m_ExternalTemperatureCircuit
Definition: CircuitManager.h:90
SEFluidCircuit * m_CombinedRespiratoryBagValveMaskCircuit
Definition: CircuitManager.h:80
SEFluidCircuit * m_CombinedRespiratoryNonRebreatherMaskCircuit
Definition: CircuitManager.h:84
Data & m_data
Definition: CircuitManager.h:55
SEFluidCircuit * m_CombinedRespiratoryInhalerCircuit
Definition: CircuitManager.h:81
SEFluidCircuit * m_CombinedRespiratoryAnesthesiaCircuit
Definition: CircuitManager.h:79
SEThermalCircuit * m_TemperatureCircuit
Definition: CircuitManager.h:88
SEFluidCircuit * m_AnesthesiaMachineCircuit
Definition: CircuitManager.h:72
SEFluidCircuit * m_CombinedRespiratoryMechanicalVentilatorCircuit
Definition: CircuitManager.h:86
SEFluidCircuit * m_CombinedRespiratoryNasalCannulaCircuit
Definition: CircuitManager.h:82
SEFluidCircuit * m_CombinedCardiovascularCircuit
Definition: CircuitManager.h:65
SEThermalCircuit * m_InternalTemperatureCircuit
Definition: CircuitManager.h:89
SEFluidCircuit * m_BagValveMaskCircuit
Definition: CircuitManager.h:73
Definition: Logger.h:14

Distributed under the Apache License, Version 2.0.

See accompanying NOTICE file for details.