ModelSpace
Documentation for ModelSpace models and classes.
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Model.h File Reference
#include "nlohmann/json.hpp"
#include "flight/App.h"
#include "SimulationSteps.h"
#include "SimulationExecutive.h"

Go to the source code of this file.

Classes

class  modelspace::Model
 Base model class for derived implementation. More...
 

Namespaces

 modelspace
 Class to propagate CR3BP dynamics in characteristic units.
 

Macros

#define MODEL(MODEL_NAME)
 
#define MODEL_LOG(LEVEL, MESSAGE)
 Special implementation of log in model which handles conversion from std::string to c-string. More...
 

Macro Definition Documentation

◆ MODEL

#define MODEL (   MODEL_NAME)
Value:
class MODEL_NAME : public Model {\
public:\
MODEL_NAME(Model &pnt, const std::string &m_name=#MODEL_NAME);\
MODEL_NAME(SimulationExecutive &e, const std::string &m_name=#MODEL_NAME);\
MODEL_NAME(Model &pnt, int schedule_slot, const std::string &m_name=#MODEL_NAME);\
MODEL_NAME(SimulationExecutive &e, int schedule_slot, const std::string &m_name=#MODEL_NAME);\
virtual ~MODEL_NAME();\
protected:\
virtual std::string classType() {return #MODEL_NAME;}

◆ MODEL_LOG

#define MODEL_LOG (   LEVEL,
  MESSAGE 
)
Value:
if((uint8)LEVEL) {\
std::string log_msg = MESSAGE;\
LOG(LEVEL, log_msg.c_str());\
}

Special implementation of log in model which handles conversion from std::string to c-string.

Note
if(LEVEL) check is for scoping log_msg for multiple logs