1 #ifndef CYCAMORE_SRC_DEPLOY_INST_H_ 2 #define CYCAMORE_SRC_DEPLOY_INST_H_ 13 typedef std::map<int, std::vector<std::string> >
BuildSched;
22 class DeployInst :
public cyclus::Institution,
23 public cyclus::toolkit::Position {
24 #pragma cyclus note { \ 26 "Builds and manages agents (facilities) according to a manually" \ 27 " specified deployment schedule. Deployed agents are automatically" \ 28 " decommissioned at the end of their lifetime. The user specifies a" \ 29 " list of prototypes for" \ 30 " each and corresponding build times, number to build, and (optionally)" \ 31 " lifetimes. The same prototype can be specified multiple times with" \ 32 " any combination of the same or different build times, build number," \ 44 virtual void Build(cyclus::Agent* parent);
49 #pragma cyclus var { \ 50 "doc": "Ordered list of prototypes to build.", \ 51 "uitype": ("oneormore", "prototype"), \ 52 "uilabel": "Prototypes to deploy", \ 56 #pragma cyclus var { \ 57 "doc": "Time step on which to deploy agents given in prototype list " \ 59 "uilabel": "Deployment times", \ 63 #pragma cyclus var { \ 64 "doc": "Number of each prototype given in prototype list that should be " \ 65 "deployed (same order).", \ 66 "uilabel": "Number to deploy", \ 71 #pragma cyclus var { \ 72 "doc": "Lifetimes for each prototype in prototype list (same order)." \ 73 " These lifetimes override the lifetimes in the original prototype" \ 75 " If unspecified, lifetimes from the original prototype definitions"\ 77 " Although a new prototype is created in the Prototypes table for" \ 78 " each lifetime with the suffix '_life_[lifetime]'," \ 79 " all deployed agents themselves will have the same original" \ 80 " prototype name (and so will the Agents tables).", \ 82 "uilabel": "Lifetimes" \ 87 #pragma cyclus var { \ 89 "uilabel": "Geographical latitude in degrees as a double", \ 90 "doc": "Latitude of the agent's geographical position. The value should " \ 91 "be expressed in degrees as a double." \ 95 #pragma cyclus var { \ 97 "uilabel": "Geographical longitude in degrees as a double", \ 98 "doc": "Longitude of the agent's geographical position. The value should " \ 99 "be expressed in degrees as a double." \ 111 #endif // CYCAMORE_SRC_DEPLOY_INST_H_
virtual void Build(cyclus::Agent *parent)
std::vector< std::string > prototypes
std::vector< int > n_build
cycamore::GrowthRegion string
std::vector< int > build_times
virtual std::string version()
void RecordPosition()
Records an agent's latitude and longitude to the output db.
virtual void EnterNotify()
std::map< int, std::vector< std::string > > BuildSched
DeployInst(cyclus::Context *ctx)
cyclus::toolkit::Position coordinates
std::vector< int > lifetimes