8 : cyclus::Institution(ctx) {}
11ManagerInst::~ManagerInst() {}
13void ManagerInst::BuildNotify(Agent* a) {
17void ManagerInst::DecomNotify(Agent* a) {
21void ManagerInst::EnterNotify() {
22 cyclus::Institution::EnterNotify();
23 std::set<cyclus::Agent*>::iterator sit;
24 for (sit = cyclus::Agent::children().begin();
25 sit != cyclus::Agent::children().end();
31 using cyclus::toolkit::CommodityProducer;
32 std::vector<std::string>::iterator vit;
33 for (vit = prototypes.begin(); vit != prototypes.end(); ++vit) {
34 Agent* a = context()->CreateAgent<Agent>(*vit);
35 CommodityProducer* cp_cast =
dynamic_cast<CommodityProducer*
>(a);
36 if (cp_cast != NULL) {
37 LOG(cyclus::LEV_INFO3,
"mani") <<
"Registering prototype "
38 << a->prototype() << a->id()
39 <<
" with the Builder interface.";
40 Builder::Register(cp_cast);
47void ManagerInst::Register_(Agent* a) {
48 using cyclus::toolkit::CommodityProducer;
49 using cyclus::toolkit::CommodityProducerManager;
51 CommodityProducer* cp_cast =
dynamic_cast<CommodityProducer*
>(a);
52 if (cp_cast != NULL) {
53 LOG(cyclus::LEV_INFO3,
"mani") <<
"Registering agent "
54 << a->prototype() << a->id()
55 <<
" as a commodity producer.";
56 CommodityProducerManager::Register(cp_cast);
60void ManagerInst::Unregister_(Agent* a) {
61 using cyclus::toolkit::CommodityProducer;
62 using cyclus::toolkit::CommodityProducerManager;
64 CommodityProducer* cp_cast =
dynamic_cast<CommodityProducer*
>(a);
66 CommodityProducerManager::Unregister(cp_cast);
70void ManagerInst::WriteProducerInformation(
71 cyclus::toolkit::CommodityProducer* producer) {
73 set<cyclus::toolkit::Commodity,
74 cyclus::toolkit::CommodityCompare> commodities =
75 producer->ProducedCommodities();
76 set<cyclus::toolkit::Commodity, cyclus::toolkit::CommodityCompare>::
79 LOG(cyclus::LEV_DEBUG3,
"maninst") <<
" Clone produces " << commodities.size()
81 for (it = commodities.begin(); it != commodities.end(); it++) {
82 LOG(cyclus::LEV_DEBUG3,
"maninst") <<
" Commodity produced: " << it->name();
83 LOG(cyclus::LEV_DEBUG3,
"maninst") <<
" capacity: " <<
84 producer->Capacity(*it);
85 LOG(cyclus::LEV_DEBUG3,
"maninst") <<
" cost: " <<
92 return new ManagerInst(ctx);
ManagerInst(cyclus::Context *ctx)
Default constructor.
cyclus::Agent * ConstructManagerInst(cyclus::Context *ctx)
void Unregister_(cyclus::Agent *agent)
unregister a child
void Register_(cyclus::Agent *agent)
register a child