4template<CIRCUIT_PATH_TEMPLATE>
7 m_Resistance =
nullptr;
8 m_NextResistance =
nullptr;
9 m_ResistanceBaseline =
nullptr;
10 m_Capacitance =
nullptr;
11 m_NextCapacitance =
nullptr;
12 m_CapacitanceBaseline =
nullptr;
13 m_Inductance =
nullptr;
14 m_NextInductance =
nullptr;
15 m_InductanceBaseline =
nullptr;
18 m_FluxSource =
nullptr;
19 m_NextFluxSource =
nullptr;
20 m_FluxSourceBaseline =
nullptr;
21 m_PotentialSource =
nullptr;
22 m_NextPotentialSource =
nullptr;
23 m_PotentialSourceBaseline =
nullptr;
24 m_ValveBreakdownPotential =
nullptr;
25 m_Switch = eGate::NullGate;
26 m_Valve = eGate::NullGate;
27 m_NextSwitch = eGate::NullGate;
28 m_NextValve = eGate::NullGate;
29 m_NextPolarizedState = eGate::NullGate;
30 m_PolarizedState = eGate::NullGate;
33 m_NumNextElements = 0;
35 if (&m_SourceNode == &m_TargetNode)
38 ss <<
"Path " << GetName() <<
" has the same Source and Target Nodes. They cannot be the same Node.";
43template<CIRCUIT_PATH_TEMPLATE>
49template<CIRCUIT_PATH_TEMPLATE>
52 m_Switch = eGate::NullGate;
53 m_Valve = eGate::NullGate;
54 m_NextSwitch = eGate::NullGate;
55 m_NextValve = eGate::NullGate;
56 m_NextPolarizedState = eGate::NullGate;
57 m_PolarizedState = eGate::NullGate;
58 SAFE_DELETE(m_Resistance);
59 SAFE_DELETE(m_NextResistance);
60 SAFE_DELETE(m_ResistanceBaseline);
61 SAFE_DELETE(m_Capacitance);
62 SAFE_DELETE(m_NextCapacitance);
63 SAFE_DELETE(m_CapacitanceBaseline);
64 SAFE_DELETE(m_Inductance);
65 SAFE_DELETE(m_NextInductance);
66 SAFE_DELETE(m_InductanceBaseline);
68 SAFE_DELETE(m_NextFlux);
69 SAFE_DELETE(m_FluxSource);
70 SAFE_DELETE(m_NextFluxSource);
71 SAFE_DELETE(m_FluxSourceBaseline);
72 SAFE_DELETE(m_PotentialSource);
73 SAFE_DELETE(m_NextPotentialSource);
74 SAFE_DELETE(m_PotentialSourceBaseline);
75 SAFE_DELETE(m_ValveBreakdownPotential);
78template<CIRCUIT_PATH_TEMPLATE>
84template<CIRCUIT_PATH_TEMPLATE>
87 return m_IsPartOfBlackBox;
89template<CIRCUIT_PATH_TEMPLATE>
92 m_IsPartOfBlackBox = b;
95template<CIRCUIT_PATH_TEMPLATE>
100template<CIRCUIT_PATH_TEMPLATE>
109template<CIRCUIT_PATH_TEMPLATE>
112 unsigned short numRCI = (HasResistance() ? 1 : 0) +
113 (HasCapacitance() ? 1 : 0) +
114 (HasInductance() ? 1 : 0);
115 unsigned short numNextRCI = (HasNextResistance() ? 1 : 0) +
116 (HasNextCapacitance() ? 1 : 0) +
117 (HasNextInductance() ? 1 : 0);
118 unsigned short numSrcState = (HasSwitch() ? 1 : 0) +
119 (HasValve() ? 1 : 0) +
120 (HasFluxSource() ? 1 : 0) +
121 (HasPotentialSource() ? 1 : 0);
122 unsigned short numNextSrcState = (HasNextSwitch() ? 1 : 0) +
123 (HasNextValve() ? 1 : 0) +
124 (HasNextFluxSource() ? 1 : 0) +
125 (HasNextPotentialSource() ? 1 : 0);
126 m_NumElements = numRCI + numSrcState;
127 m_NumNextElements = numNextRCI + numNextSrcState;
128 if (m_NumElements > 1 || m_NumNextElements > 1)
130 Error(
"There is only one element allowed per path.");
133 if (HasPolarizedState())
137 Error(
"You must have a Resistance, Capacitance or Inductance on the path if you have a polarized state.");
142 Error(
"You cannot have a Switch, Valve, FluxSource or PotentialSource on a path with a polarized state.");
146 if (HasNextPolarizedState())
150 Error(
"You must have a Resistance, Capacitance or Inductance on the path if you have a polarized state.");
153 if (numNextSrcState > 0)
155 Error(
"You cannot have a Switch, Valve, FluxSource or PotentialSource on a path with a polarized state.");
159 if (HasValveBreakdownPotential())
163 Error(
"You cannot have a ValveBreakdownPotential if you do not have a valve.");
166 if (m_ValveBreakdownPotential->IsNegative())
168 Error(
"A negative Breakdown Potential is not allowed. Consider adding a Valve with reversed polarity.");
175template<CIRCUIT_PATH_TEMPLATE>
180template<CIRCUIT_PATH_TEMPLATE>
185template<CIRCUIT_PATH_TEMPLATE>
188 m_Switch = (m_Switch == eGate::Open) ? eGate::Closed : eGate::Open;
190template<CIRCUIT_PATH_TEMPLATE>
193 return m_Switch == eGate::NullGate ? false :
true;
195template<CIRCUIT_PATH_TEMPLATE>
198 m_Switch = eGate::NullGate;
201template<CIRCUIT_PATH_TEMPLATE>
206template<CIRCUIT_PATH_TEMPLATE>
209 m_NextSwitch = state;
211template<CIRCUIT_PATH_TEMPLATE>
214 m_NextSwitch = (m_NextSwitch == eGate::Open) ? eGate::Closed : eGate::Open;
216template<CIRCUIT_PATH_TEMPLATE>
219 return m_NextSwitch == eGate::NullGate ? false :
true;
221template<CIRCUIT_PATH_TEMPLATE>
224 m_NextSwitch = eGate::NullGate;
226template<CIRCUIT_PATH_TEMPLATE>
229 m_Switch = eGate::NullGate;
230 m_NextSwitch = eGate::NullGate;
233template<CIRCUIT_PATH_TEMPLATE>
238template<CIRCUIT_PATH_TEMPLATE>
243template<CIRCUIT_PATH_TEMPLATE>
246 m_Valve = (m_Valve == eGate::Open) ? eGate::Closed : eGate::Open;
248template<CIRCUIT_PATH_TEMPLATE>
251 return m_Valve == eGate::NullGate ? false :
true;
253template<CIRCUIT_PATH_TEMPLATE>
256 m_Valve = eGate::NullGate;
259template<CIRCUIT_PATH_TEMPLATE>
264template<CIRCUIT_PATH_TEMPLATE>
269template<CIRCUIT_PATH_TEMPLATE>
272 m_NextValve = (m_NextValve == eGate::Open) ? eGate::Closed : eGate::Open;
274template<CIRCUIT_PATH_TEMPLATE>
277 return m_NextValve == eGate::NullGate ? false :
true;
279template<CIRCUIT_PATH_TEMPLATE>
282 m_NextValve = eGate::NullGate;
284template<CIRCUIT_PATH_TEMPLATE>
287 m_Valve = eGate::NullGate;
288 m_NextValve = eGate::NullGate;
291template<CIRCUIT_PATH_TEMPLATE>
294 return m_NextPolarizedState;
296template<CIRCUIT_PATH_TEMPLATE>
299 m_NextPolarizedState = state;
301template<CIRCUIT_PATH_TEMPLATE>
304 m_NextPolarizedState = (m_NextPolarizedState == eGate::Open) ? eGate::Closed : eGate::Open;
306template<CIRCUIT_PATH_TEMPLATE>
309 return m_NextPolarizedState == eGate::NullGate ? false :
true;
311template<CIRCUIT_PATH_TEMPLATE>
314 m_NextPolarizedState = eGate::NullGate;
317template<CIRCUIT_PATH_TEMPLATE>
320 return m_PolarizedState;
322template<CIRCUIT_PATH_TEMPLATE>
325 m_PolarizedState = state;
327template<CIRCUIT_PATH_TEMPLATE>
330 m_PolarizedState = (m_PolarizedState == eGate::Open) ? eGate::Closed : eGate::Open;
332template<CIRCUIT_PATH_TEMPLATE>
335 return m_PolarizedState == eGate::NullGate ? false :
true;
337template<CIRCUIT_PATH_TEMPLATE>
340 m_PolarizedState = eGate::NullGate;
347template<CIRCUIT_PATH_TEMPLATE>
350 return m_Resistance ==
nullptr ? false : m_Resistance->IsValid();
352template<CIRCUIT_PATH_TEMPLATE>
355 if (m_Resistance ==
nullptr)
356 m_Resistance =
new ResistanceScalar();
357 return *m_Resistance;
359template<CIRCUIT_PATH_TEMPLATE>
362 return m_NextResistance ==
nullptr ? false : m_NextResistance->IsValid();
364template<CIRCUIT_PATH_TEMPLATE>
367 if (m_NextResistance ==
nullptr)
368 m_NextResistance =
new ResistanceScalar();
369 return *m_NextResistance;
371template<CIRCUIT_PATH_TEMPLATE>
374 return m_ResistanceBaseline ==
nullptr ? false : m_ResistanceBaseline->IsValid();
376template<CIRCUIT_PATH_TEMPLATE>
379 if (m_ResistanceBaseline ==
nullptr)
380 m_ResistanceBaseline =
new ResistanceScalar();
381 return *m_ResistanceBaseline;
383template<CIRCUIT_PATH_TEMPLATE>
386 if (m_Resistance !=
nullptr)
387 m_Resistance->ForceInvalidate();
388 if (m_NextResistance !=
nullptr)
389 m_NextResistance->ForceInvalidate();
390 if (m_ResistanceBaseline !=
nullptr)
391 m_ResistanceBaseline->ForceInvalidate();
397template<CIRCUIT_PATH_TEMPLATE>
400 return m_Capacitance ==
nullptr ? false : m_Capacitance->IsValid();
402template<CIRCUIT_PATH_TEMPLATE>
405 if (m_Capacitance ==
nullptr)
406 m_Capacitance =
new CapacitanceScalar();
407 return *m_Capacitance;
409template<CIRCUIT_PATH_TEMPLATE>
412 return m_NextCapacitance ==
nullptr ? false : m_NextCapacitance->IsValid();
414template<CIRCUIT_PATH_TEMPLATE>
417 if (m_NextCapacitance ==
nullptr)
418 m_NextCapacitance =
new CapacitanceScalar();
419 return *m_NextCapacitance;
421template<CIRCUIT_PATH_TEMPLATE>
424 return m_CapacitanceBaseline ==
nullptr ? false : m_CapacitanceBaseline->IsValid();
426template<CIRCUIT_PATH_TEMPLATE>
429 if (m_CapacitanceBaseline ==
nullptr)
430 m_CapacitanceBaseline =
new CapacitanceScalar();
431 return *m_CapacitanceBaseline;
433template<CIRCUIT_PATH_TEMPLATE>
436 if (m_Capacitance !=
nullptr)
437 m_Capacitance->ForceInvalidate();
438 if (m_NextCapacitance !=
nullptr)
439 m_NextCapacitance->ForceInvalidate();
440 if (m_CapacitanceBaseline !=
nullptr)
441 m_CapacitanceBaseline->ForceInvalidate();
447template<CIRCUIT_PATH_TEMPLATE>
450 return m_Inductance ==
nullptr ? false : m_Inductance->IsValid();
452template<CIRCUIT_PATH_TEMPLATE>
455 if (m_Inductance ==
nullptr)
456 m_Inductance =
new InductanceScalar();
457 return *m_Inductance;
459template<CIRCUIT_PATH_TEMPLATE>
462 return m_NextInductance ==
nullptr ? false : m_NextInductance->IsValid();
464template<CIRCUIT_PATH_TEMPLATE>
467 if (m_NextInductance ==
nullptr)
468 m_NextInductance =
new InductanceScalar();
469 return *m_NextInductance;
471template<CIRCUIT_PATH_TEMPLATE>
474 return m_InductanceBaseline ==
nullptr ? false : m_InductanceBaseline->IsValid();
476template<CIRCUIT_PATH_TEMPLATE>
479 if (m_InductanceBaseline ==
nullptr)
480 m_InductanceBaseline =
new InductanceScalar();
481 return *m_InductanceBaseline;
483template<CIRCUIT_PATH_TEMPLATE>
486 if (m_Inductance !=
nullptr)
487 m_Inductance->ForceInvalidate();
488 if (m_NextInductance !=
nullptr)
489 m_NextInductance->ForceInvalidate();
490 if (m_InductanceBaseline !=
nullptr)
491 m_InductanceBaseline->ForceInvalidate();
497template<CIRCUIT_PATH_TEMPLATE>
500 return m_Flux ==
nullptr ? false : m_Flux->IsValid();
502template<CIRCUIT_PATH_TEMPLATE>
505 if (m_Flux ==
nullptr)
506 m_Flux =
new FluxScalar();
509template<CIRCUIT_PATH_TEMPLATE>
512 return m_NextFlux ==
nullptr ? false : m_NextFlux->IsValid();
514template<CIRCUIT_PATH_TEMPLATE>
517 if (m_NextFlux ==
nullptr)
518 m_NextFlux =
new FluxScalar();
521template<CIRCUIT_PATH_TEMPLATE>
524 return m_FluxSource ==
nullptr ? false : m_FluxSource->IsValid();
526template<CIRCUIT_PATH_TEMPLATE>
529 if (m_FluxSource ==
nullptr)
530 m_FluxSource =
new FluxScalar();
531 return *m_FluxSource;
533template<CIRCUIT_PATH_TEMPLATE>
536 return m_NextFluxSource ==
nullptr ? false : m_NextFluxSource->IsValid();
538template<CIRCUIT_PATH_TEMPLATE>
541 if (m_NextFluxSource ==
nullptr)
542 m_NextFluxSource =
new FluxScalar();
543 return *m_NextFluxSource;
545template<CIRCUIT_PATH_TEMPLATE>
548 return m_FluxSourceBaseline ==
nullptr ? false : m_FluxSourceBaseline->IsValid();
550template<CIRCUIT_PATH_TEMPLATE>
553 if (m_FluxSourceBaseline ==
nullptr)
554 m_FluxSourceBaseline =
new FluxScalar();
555 return *m_FluxSourceBaseline;
557template<CIRCUIT_PATH_TEMPLATE>
560 if (m_FluxSource !=
nullptr)
561 m_FluxSource->ForceInvalidate();
562 if (m_NextFluxSource !=
nullptr)
563 m_NextFluxSource->ForceInvalidate();
564 if (m_FluxSourceBaseline !=
nullptr)
565 m_FluxSourceBaseline->ForceInvalidate();
568template<CIRCUIT_PATH_TEMPLATE>
571 m_FluxType = eBlackBox_Property_Type::Calculate;
573template<CIRCUIT_PATH_TEMPLATE>
576 return m_FluxType == eBlackBox_Property_Type::Imposed;
578template<CIRCUIT_PATH_TEMPLATE>
581 m_FluxType = eBlackBox_Property_Type::Imposed;
582 if (m_NextFlux ==
nullptr)
583 m_NextFlux =
new FluxScalar();
584 m_NextFlux->SetValue(v, unit);
586template<CIRCUIT_PATH_TEMPLATE>
589 m_FluxType = eBlackBox_Property_Type::Imposed;
590 if (m_NextFlux ==
nullptr)
591 m_NextFlux =
new FluxScalar();
598template<CIRCUIT_PATH_TEMPLATE>
601 return m_PotentialSource ==
nullptr ? false : m_PotentialSource->IsValid();
603template<CIRCUIT_PATH_TEMPLATE>
606 if (m_PotentialSource ==
nullptr)
607 m_PotentialSource =
new PotentialScalar();
608 return *m_PotentialSource;
610template<CIRCUIT_PATH_TEMPLATE>
613 return m_NextPotentialSource ==
nullptr ? false : m_NextPotentialSource->IsValid();
615template<CIRCUIT_PATH_TEMPLATE>
618 if (m_NextPotentialSource ==
nullptr)
619 m_NextPotentialSource =
new PotentialScalar();
620 return *m_NextPotentialSource;
622template<CIRCUIT_PATH_TEMPLATE>
625 return m_PotentialSourceBaseline ==
nullptr ? false : m_PotentialSourceBaseline->IsValid();
627template<CIRCUIT_PATH_TEMPLATE>
630 if (m_PotentialSourceBaseline ==
nullptr)
631 m_PotentialSourceBaseline =
new PotentialScalar();
632 return *m_PotentialSourceBaseline;
634template<CIRCUIT_PATH_TEMPLATE>
637 if (m_PotentialSource !=
nullptr)
638 m_PotentialSource->ForceInvalidate();
639 if (m_NextPotentialSource !=
nullptr)
640 m_NextPotentialSource->ForceInvalidate();
641 if (m_PotentialSourceBaseline !=
nullptr)
642 m_PotentialSourceBaseline->ForceInvalidate();
646template<CIRCUIT_PATH_TEMPLATE>
649 return m_ValveBreakdownPotential ==
nullptr ? false : m_ValveBreakdownPotential->IsValid();
651template<CIRCUIT_PATH_TEMPLATE>
654 if (m_ValveBreakdownPotential ==
nullptr)
655 m_ValveBreakdownPotential =
new PotentialScalar();
656 return *m_ValveBreakdownPotential;
659#include "cdm/circuit/fluid/SEFluidCircuitPath.h"
661#include "cdm/circuit/electrical/SEElectricalCircuitPath.h"
663#include "cdm/circuit/thermal/SEThermalCircuitPath.h"
virtual bool HasNextPotentialSource() const
Definition: SECircuitPath.cpp:613
virtual void SetNextValve(eGate state)
Definition: SECircuitPath.cpp:267
virtual bool HasNextValve() const
Definition: SECircuitPath.cpp:277
virtual void RemoveImposedFlux()
Definition: SECircuitPath.cpp:571
virtual void RemoveCapacitance()
Definition: SECircuitPath.cpp:436
virtual bool HasPolarizedState() const
Definition: SECircuitPath.cpp:335
virtual bool HasInductance() const
Definition: SECircuitPath.cpp:450
virtual bool HasNextSwitch() const
Definition: SECircuitPath.cpp:219
virtual bool IsPartOfBlackBox() const
Definition: SECircuitPath.cpp:87
virtual void SetPolarizedState(eGate state)
Definition: SECircuitPath.cpp:325
virtual bool HasNextResistance() const
Definition: SECircuitPath.cpp:362
virtual void InvalidateNextPolarizedState()
Definition: SECircuitPath.cpp:314
virtual bool HasSwitch() const
Definition: SECircuitPath.cpp:193
virtual bool HasResistance() const
Definition: SECircuitPath.cpp:350
virtual bool HasCapacitanceBaseline() const
Definition: SECircuitPath.cpp:424
virtual eGate GetSwitch() const
Definition: SECircuitPath.cpp:178
virtual FluxScalar & GetNextFlux()
Definition: SECircuitPath.cpp:517
virtual void InvalidateSwitch()
Definition: SECircuitPath.cpp:198
virtual void SetPartOfBlackBox(bool b)
Definition: SECircuitPath.cpp:92
virtual void RemoveValve()
Definition: SECircuitPath.cpp:287
SECircuitPath(SECircuitNode< CIRCUIT_NODE_TYPES > &src, SECircuitNode< CIRCUIT_NODE_TYPES > &tgt, const std::string &name)
Definition: SECircuitPath.cpp:7
virtual void FlipSwitch()
Definition: SECircuitPath.cpp:188
virtual void Clear()
Definition: SECircuitPath.cpp:52
virtual ResistanceScalar & GetNextResistance()
Definition: SECircuitPath.cpp:367
virtual std::string GetName() const
Definition: SECircuitPath.cpp:81
virtual bool HasNextCapacitance() const
Definition: SECircuitPath.cpp:412
virtual void FlipNextValve()
Definition: SECircuitPath.cpp:272
virtual void SetValve(eGate state)
Definition: SECircuitPath.cpp:241
virtual ~SECircuitPath()
Definition: SECircuitPath.cpp:46
virtual FluxScalar & GetFlux()
Definition: SECircuitPath.cpp:505
virtual void SetSwitch(eGate state)
Definition: SECircuitPath.cpp:183
virtual bool HasNextInductance() const
Definition: SECircuitPath.cpp:462
virtual bool HasFluxSourceBaseline() const
Definition: SECircuitPath.cpp:548
virtual FluxScalar & GetNextFluxSource()
Definition: SECircuitPath.cpp:541
virtual bool HasNextFlux() const
Definition: SECircuitPath.cpp:512
virtual eGate GetNextSwitch() const
Definition: SECircuitPath.cpp:204
virtual void RemovePotentialSource()
Definition: SECircuitPath.cpp:637
virtual bool IsFluxImposed() const
Definition: SECircuitPath.cpp:576
virtual ResistanceScalar & GetResistanceBaseline()
Definition: SECircuitPath.cpp:379
virtual void FlipNextPolarizedState()
Definition: SECircuitPath.cpp:304
virtual CapacitanceScalar & GetCapacitance()
Definition: SECircuitPath.cpp:405
virtual bool HasValveBreakdownPotential() const
Definition: SECircuitPath.cpp:649
virtual void RemoveInductance()
Definition: SECircuitPath.cpp:486
virtual bool HasFluxSource() const
Definition: SECircuitPath.cpp:524
virtual eGate GetNextValve() const
Definition: SECircuitPath.cpp:262
virtual InductanceScalar & GetInductanceBaseline()
Definition: SECircuitPath.cpp:479
virtual SECircuitNode< CIRCUIT_NODE_TYPES > & GetTargetNode() const
Definition: SECircuitPath.cpp:103
virtual bool HasValve() const
Definition: SECircuitPath.cpp:251
virtual ResistanceScalar & GetResistance()
Definition: SECircuitPath.cpp:355
virtual eGate GetNextPolarizedState() const
Definition: SECircuitPath.cpp:294
virtual void InvalidatePolarizedState()
Definition: SECircuitPath.cpp:340
virtual bool HasFlux() const
Definition: SECircuitPath.cpp:500
virtual bool HasPotentialSource() const
Definition: SECircuitPath.cpp:601
virtual PotentialScalar & GetValveBreakdownPotential()
Definition: SECircuitPath.cpp:654
virtual bool HasPotentialSourceBaseline() const
Definition: SECircuitPath.cpp:625
virtual CapacitanceScalar & GetCapacitanceBaseline()
Definition: SECircuitPath.cpp:429
virtual void RemoveSwitch()
Definition: SECircuitPath.cpp:229
virtual InductanceScalar & GetInductance()
Definition: SECircuitPath.cpp:455
virtual FluxScalar & GetFluxSource()
Definition: SECircuitPath.cpp:529
virtual PotentialScalar & GetPotentialSource()
Definition: SECircuitPath.cpp:606
virtual bool HasNextPolarizedState() const
Definition: SECircuitPath.cpp:309
virtual InductanceScalar & GetNextInductance()
Definition: SECircuitPath.cpp:467
virtual void ImposeFlux(const FluxScalar &s)
Definition: SECircuitPath.cpp:589
virtual void InvalidateNextValve()
Definition: SECircuitPath.cpp:282
virtual void InvalidateValve()
Definition: SECircuitPath.cpp:256
virtual void FlipValve()
Definition: SECircuitPath.cpp:246
virtual void SetNextSwitch(eGate state)
Definition: SECircuitPath.cpp:209
virtual bool HasCapacitance() const
Definition: SECircuitPath.cpp:400
virtual bool HasResistanceBaseline() const
Definition: SECircuitPath.cpp:374
virtual void FlipNextSwitch()
Definition: SECircuitPath.cpp:214
virtual void FlipPolarizedState()
Definition: SECircuitPath.cpp:330
virtual FluxScalar & GetFluxSourceBaseline()
Definition: SECircuitPath.cpp:553
virtual eGate GetValve() const
Definition: SECircuitPath.cpp:236
virtual bool HasInductanceBaseline() const
Definition: SECircuitPath.cpp:474
virtual bool HasNextFluxSource() const
Definition: SECircuitPath.cpp:536
virtual void RemoveFluxSource()
Definition: SECircuitPath.cpp:560
virtual PotentialScalar & GetPotentialSourceBaseline()
Definition: SECircuitPath.cpp:630
virtual void SetNextPolarizedState(eGate state)
Definition: SECircuitPath.cpp:299
virtual PotentialScalar & GetNextPotentialSource()
Definition: SECircuitPath.cpp:618
virtual SECircuitNode< CIRCUIT_NODE_TYPES > & GetSourceNode() const
Definition: SECircuitPath.cpp:98
virtual CapacitanceScalar & GetNextCapacitance()
Definition: SECircuitPath.cpp:417
virtual eGate GetPolarizedState() const
Definition: SECircuitPath.cpp:320
virtual bool HasValidElements() const
Definition: SECircuitPath.cpp:112
virtual void InvalidateNextSwitch()
Definition: SECircuitPath.cpp:224
virtual void RemoveResistance()
Definition: SECircuitPath.cpp:386