SELiquidCompartmentGraph.h
1 /* Distributed under the Apache License, Version 2.0.
2  See accompanying NOTICE file for details.*/
3 
4 #pragma once
5 #include "cdm/compartment/fluid/SELiquidCompartment.h"
6 #include "cdm/compartment/fluid/SELiquidCompartmentLink.h"
7 #include "cdm/compartment/SECompartmentTransportGraph.h"
8 
10 
13 #define DefaultLiquidTransporterUnits VolumePerTimeUnit::L_Per_s, VolumeUnit::mL, MassUnit::ug, MassPerVolumeUnit::ug_Per_mL
14 
15 class CDM_DECL SELiquidCompartmentGraph : public SECompartmentTransportGraph<SELiquidTransportGraph, SELiquidTransportVertex, SELiquidTransportEdge, SELiquidCompartment, SELiquidCompartmentLink>
16 {
17  friend class PBCompartment;//friend the serialization class
18  friend class SECompartmentManager;
19 protected:
20  SELiquidCompartmentGraph(const std::string& name, Logger* logger) : SECompartmentTransportGraph(name, logger) {};
21 public:
23 
24  void AddGraph(SELiquidCompartmentGraph& graph);
25 
26 protected:
27  void BalanceByIntensive() override;
28 };
Definition: Logger.h:71
Definition: PBCompartment.h:28
Definition: SECompartmentManager.h:25
Definition: SECompartmentTransportGraph.h:12
void BalanceByIntensive() override=0
Definition: SELiquidCompartmentGraph.h:16
SELiquidCompartmentGraph(const std::string &name, Logger *logger)
Definition: SELiquidCompartmentGraph.h:20
virtual ~SELiquidCompartmentGraph()
Definition: SELiquidCompartmentGraph.h:22
Definition: SESubstanceTransport.h:71
Definition: SESubstanceTransport.h:86

Distributed under the Apache License, Version 2.0.

See accompanying NOTICE file for details.