SEFluidCircuit.h
1 /* Distributed under the Apache License, Version 2.0.
2  See accompanying NOTICE file for details.*/
3 
4 #pragma once
5 #include "cdm/circuit/SECircuit.h"
6 #include "cdm/circuit/fluid/SEFluidCircuitNode.h"
7 #include "cdm/circuit/fluid/SEFluidCircuitPath.h"
8 
9 class SECircuitManager;
10 
11 class CDM_DECL SEFluidCircuit : public SECircuit<SEFluidCircuitNode, SEFluidCircuitPath>
12 {
13  friend class PBCircuit;//friend the serialization class
14  friend class SECircuitManager;
15 protected:
16  SEFluidCircuit(const std::string& name, SECircuitManager& mgr);
17 public:
18  virtual ~SEFluidCircuit();
19 
20  SEFluidCircuitNode& CreateNode(const std::string& name);
21  SEFluidCircuitPath& CreatePath(SEFluidCircuitNode& src, SEFluidCircuitNode& tgt, const std::string& name);
22 
23  void AddCircuit(SEFluidCircuit& circuit);
24 
25 protected:
27 };
Definition: PBCircuit.h:26
Definition: SECircuit.h:13
Definition: SECircuitManager.h:38
PathType & CreatePath(NodeType &src, NodeType &tgt, const std::string &name, SECircuitLedger< CIRCUIT_LEDGER_TYPES > &ledger)
Definition: SECircuitManager.hxx:102
NodeType & CreateNode(const std::string &name, SECircuitLedger< CIRCUIT_LEDGER_TYPES > &ledger)
Definition: SECircuitManager.hxx:25
Definition: SEFluidCircuit.h:12
SECircuitManager & m_Mgr
Definition: SEFluidCircuit.h:26
Definition: SEFluidCircuitNode.h:10
Definition: SEFluidCircuitPath.h:9

Distributed under the Apache License, Version 2.0.

See accompanying NOTICE file for details.