1#line 1 "/cycamore/src/manager_inst.cc"
9 : cyclus::Institution(ctx) {}
23 cyclus::Institution::EnterNotify();
24 std::set<cyclus::Agent*>::iterator sit;
25 for (sit = cyclus::Agent::children().begin();
26 sit != cyclus::Agent::children().end();
32 using cyclus::toolkit::CommodityProducer;
33 std::vector<std::string>::iterator vit;
35 Agent* a = context()->CreateAgent<Agent>(*vit);
36 CommodityProducer* cp_cast =
dynamic_cast<CommodityProducer*
>(a);
37 if (cp_cast != NULL) {
38 LOG(cyclus::LEV_INFO3,
"mani") <<
"Registering prototype "
39 << a->prototype() << a->id()
40 <<
" with the Builder interface.";
41 Builder::Register(cp_cast);
49 using cyclus::toolkit::CommodityProducer;
50 using cyclus::toolkit::CommodityProducerManager;
52 CommodityProducer* cp_cast =
dynamic_cast<CommodityProducer*
>(a);
53 if (cp_cast != NULL) {
54 LOG(cyclus::LEV_INFO3,
"mani") <<
"Registering agent "
55 << a->prototype() << a->id()
56 <<
" as a commodity producer.";
57 CommodityProducerManager::Register(cp_cast);
62 using cyclus::toolkit::CommodityProducer;
63 using cyclus::toolkit::CommodityProducerManager;
65 CommodityProducer* cp_cast =
dynamic_cast<CommodityProducer*
>(a);
67 CommodityProducerManager::Unregister(cp_cast);
72 cyclus::toolkit::CommodityProducer* producer) {
74 set<cyclus::toolkit::Commodity,
75 cyclus::toolkit::CommodityCompare> commodities =
76 producer->ProducedCommodities();
77 set<cyclus::toolkit::Commodity, cyclus::toolkit::CommodityCompare>::
80 LOG(cyclus::LEV_DEBUG3,
"maninst") <<
" Clone produces " << commodities.size()
82 for (it = commodities.begin(); it != commodities.end(); it++) {
83 LOG(cyclus::LEV_DEBUG3,
"maninst") <<
" Commodity produced: " << it->name();
84 LOG(cyclus::LEV_DEBUG3,
"maninst") <<
" capacity: " <<
85 producer->Capacity(*it);
86 LOG(cyclus::LEV_DEBUG3,
"maninst") <<
" cost: " <<
void Register_(cyclus::Agent *agent)
register a child
virtual void EnterNotify()
enter the simulation and register any children present
virtual ~ManagerInst()
Default destructor.
virtual void DecomNotify(Agent *m)
unregister a child
void WriteProducerInformation(cyclus::toolkit::CommodityProducer *producer)
write information about a commodity producer to a stream
virtual void BuildNotify(Agent *m)
register a new child
void Unregister_(cyclus::Agent *agent)
unregister a child
std::vector< std::string > prototypes
ManagerInst(cyclus::Context *ctx)
Default constructor.
cyclus::Agent * ConstructManagerInst(cyclus::Context *ctx)