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