7 : cyclus::Institution(ctx),
15 cyclus::Institution::Build(parent);
16 BuildSched::iterator it;
17 std::set<std::string> protos;
25 cyclus::Agent* a = context()->CreateAgent<Agent>(proto);
30 ss <<
"_life_forever";
35 if (protos.count(proto) == 0) {
37 context()->AddPrototype(proto, a);
43 for (
int j = 0; j <
n_build[i]; j++) {
44 context()->SchedBuild(
this, proto, t);
50 cyclus::Institution::EnterNotify();
54 ss <<
"prototype '" << prototype() <<
"' has " <<
build_times.size()
55 <<
" build_times vals, expected " << n;
56 throw cyclus::ValueError(ss.str());
57 }
else if (
n_build.size() != n) {
59 ss <<
"prototype '" << prototype() <<
"' has " <<
n_build.size()
60 <<
" n_build vals, expected " << n;
61 throw cyclus::ValueError(ss.str());
64 ss <<
"prototype '" << prototype() <<
"' has " <<
lifetimes.size()
65 <<
" lifetimes vals, expected " << n;
66 throw cyclus::ValueError(ss.str());
74 ->NewDatum(
"AgentPosition")
75 ->AddVal(
"Spec", specification)
76 ->AddVal(
"Prototype", this->prototype())
77 ->AddVal(
"AgentId",
id())
virtual void Build(cyclus::Agent *parent)
cyclus::Agent * ConstructDeployInst(cyclus::Context *ctx)
std::vector< std::string > prototypes
std::vector< int > n_build
cycamore::GrowthRegion string
std::vector< int > build_times
cyclus::toolkit::Position coordinates
void RecordPosition()
Records an agent's latitude and longitude to the output db.
virtual void EnterNotify()
DeployInst(cyclus::Context *ctx)
std::vector< int > lifetimes