<
The Pulse Team is excited to announce the Pulse Physiology Engine 4.1.0 release. Upgrade now to get the best in dynamic simulation.
×
SEConsumeNutrients.h
1 /* Distributed under the Apache License, Version 2.0.
2  See accompanying NOTICE file for details.*/
3 
4 #pragma once
5 
6 #include "cdm/patient/actions/SEPatientAction.h"
7 #include "cdm/patient/SENutrition.h"
8 
9 class CDM_DECL SEConsumeNutrients : public SEPatientAction
10 {
11  friend class PBPatientAction;//friend the serialization class
12 public:
13 
14  SEConsumeNutrients(Logger* logger=nullptr);
15  virtual ~SEConsumeNutrients();
16 
17  virtual void Clear(); //clear memory
18  virtual void Copy(const SEConsumeNutrients& src, bool /*preserveState*/=false);
19 
20  virtual bool IsValid() const;
21  virtual bool IsActive() const;
22  virtual void Deactivate();
23 
24  bool HasNutrition() const;
25  SENutrition& GetNutrition();
26  const SENutrition* GetNutrition() const;
27 
28  virtual std::string GetNutritionFile() const;
29  virtual void SetNutritionFile(const std::string& fileName);
30  virtual bool HasNutritionFile() const;
31 
32  virtual void ToString(std::ostream &str) const;
33 
34  virtual const SEScalar* GetScalar(const std::string& name);
35 
36 protected:
38  std::string m_NutritionFile;
39 };
virtual const SEScalar * GetScalar(const std::string &name)=0
Definition: SEPatientAction.h:7
Definition: SEScalar.h:18
Definition: Logger.h:66
virtual void Clear()
Definition: SEPatientAction.cpp:17
SENutrition * m_Nutrition
Definition: SEConsumeNutrients.h:37
Definition: SENutrition.h:6
Definition: SEConsumeNutrients.h:9
virtual void Deactivate()
Definition: SEAction.h:34
std::string m_NutritionFile
Definition: SEConsumeNutrients.h:38
virtual bool IsValid() const
Definition: SEPatientAction.cpp:22
static SEAction * Copy(const SEAction &, const SESubstanceManager &)
Definition: SEAction.cpp:45
virtual bool IsActive() const
Definition: SEAction.h:32
Definition: PBPatientActions.h:46
virtual void ToString(std::ostream &str) const =0

Distributed under the Apache License, Version 2.0.

See accompanying NOTICE file for details.