2015-02-26 15:02:31 +00:00
|
|
|
/*
|
|
|
|
PURPOSE:
|
|
|
|
(Sie creator)
|
|
|
|
*/
|
|
|
|
|
2015-03-23 21:03:14 +00:00
|
|
|
#ifndef SIE_HH
|
|
|
|
#define SIE_HH
|
2015-02-26 15:02:31 +00:00
|
|
|
|
|
|
|
#include <string>
|
|
|
|
#include <fstream>
|
|
|
|
|
2015-06-01 15:28:29 +00:00
|
|
|
#include "trick/AttributesMap.hh"
|
|
|
|
#include "trick/EnumAttributesMap.hh"
|
2015-02-26 15:02:31 +00:00
|
|
|
|
|
|
|
namespace Trick {
|
|
|
|
|
|
|
|
/**
|
|
|
|
*
|
|
|
|
* This class wraps the MemoryManager class for use in Trick simulations
|
|
|
|
* @author Alexander S. Lin
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
class Sie {
|
|
|
|
|
|
|
|
public:
|
|
|
|
|
|
|
|
Sie() ;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Currently process_sim_args is an empty function
|
|
|
|
* @return always 0
|
|
|
|
*/
|
|
|
|
int process_sim_args() ;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Writes the S_sie.resource file using MemoryManager information
|
|
|
|
* @return always 0
|
|
|
|
*/
|
|
|
|
void sie_print_xml() ;
|
|
|
|
void class_attr_map_print_xml() ;
|
|
|
|
void enum_attr_map_print_xml() ;
|
|
|
|
void top_level_objects_print_xml() ;
|
2019-09-09 15:56:02 +00:00
|
|
|
void sie_print_json() ;
|
2020-09-01 20:55:19 +00:00
|
|
|
void sie_append_runtime_objs() ;
|
2020-12-15 18:48:21 +00:00
|
|
|
void runtime_objects_print(std::fstream & sie_out) ;
|
2015-02-26 15:02:31 +00:00
|
|
|
|
|
|
|
private:
|
|
|
|
|
|
|
|
void top_level_objects_print(std::ofstream & sie_out) ;
|
2019-09-09 15:56:02 +00:00
|
|
|
void top_level_objects_json(std::ofstream & sie_out) ;
|
2015-02-26 15:02:31 +00:00
|
|
|
|
|
|
|
// These are singleton maps holding all attributes known to the sim
|
|
|
|
Trick::AttributesMap * class_attr_map ; /* ** -- This is be ignored by ICG */
|
|
|
|
Trick::EnumAttributesMap * enum_attr_map ; /* ** -- This is be ignored by ICG */
|
|
|
|
|
|
|
|
} ;
|
|
|
|
}
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|