CYCLUS
Public Types | Public Member Functions | Public Attributes | List of all members
cyclus::ExchangeNode Class Reference

Detailed Description

ExchangeNodes are used in ExchangeGraphs to house information about a given translated Bid or Request.

Specifically, ExchangeNodes have a notion of unit capacities that the given Bid or Request contribute to the overall capacity of ExchangeNodeGroup. ExchangeNodes also have a notion of quantity, i.e., the maximum amount of a resource that can be attributed to it. Finally, nodes can be exclusive, that is to say that they represent a request or bid that must be exclusively satisfied (it can not be split).

Definition at line 27 of file exchange_graph.h.

#include <exchange_graph.h>

Public Types

typedef boost::shared_ptr< ExchangeNodePtr
 

Public Member Functions

 ExchangeNode ()
 
 ExchangeNode (double qty)
 
 ExchangeNode (double qty, bool exclusive)
 
 ExchangeNode (double qty, bool exclusive, std::string commod)
 
 ExchangeNode (double qty, bool exclusive, std::string commod, int agent_id)
 

Public Attributes

int agent_id
 
std::string commod
 
bool exclusive
 
ExchangeNodeGroupgroup
 
std::map< Arc, double > prefs
 
double qty
 
std::map< Arc, std::vector< double > > unit_capacities
 

Member Typedef Documentation

typedef boost::shared_ptr<ExchangeNode> cyclus::ExchangeNode::Ptr

Definition at line 29 of file exchange_graph.h.

Constructor & Destructor Documentation

cyclus::ExchangeNode::ExchangeNode ( )

Definition at line 41 of file exchange_graph.cc.

cyclus::ExchangeNode::ExchangeNode ( double  qty)
explicit

Definition at line 34 of file exchange_graph.cc.

cyclus::ExchangeNode::ExchangeNode ( double  qty,
bool  exclusive 
)

Definition at line 20 of file exchange_graph.cc.

cyclus::ExchangeNode::ExchangeNode ( double  qty,
bool  exclusive,
std::string  commod 
)

Definition at line 27 of file exchange_graph.cc.

cyclus::ExchangeNode::ExchangeNode ( double  qty,
bool  exclusive,
std::string  commod,
int  agent_id 
)

Definition at line 12 of file exchange_graph.cc.

Member Data Documentation

int cyclus::ExchangeNode::agent_id

the id of the agent associated with this node

Definition at line 55 of file exchange_graph.h.

std::string cyclus::ExchangeNode::commod

the commodity associated with this exchange node

Definition at line 52 of file exchange_graph.h.

bool cyclus::ExchangeNode::exclusive

whether this node represents an exclusive request or offer

Definition at line 49 of file exchange_graph.h.

ExchangeNodeGroup* cyclus::ExchangeNode::group

the parent ExchangeNodeGroup to which this ExchangeNode belongs

Definition at line 38 of file exchange_graph.h.

std::map<Arc, double> cyclus::ExchangeNode::prefs

preference values for arcs

Definition at line 46 of file exchange_graph.h.

double cyclus::ExchangeNode::qty

the maximum amount of a resource that can be associated with this node

Definition at line 59 of file exchange_graph.h.

std::map<Arc, std::vector<double> > cyclus::ExchangeNode::unit_capacities

unit values associated with this ExchangeNode corresponding to capacties of its parent ExchangeNodeGroup.

This information corresponds to the resource object from which this ExchangeNode was translated.

Definition at line 43 of file exchange_graph.h.


The documentation for this class was generated from the following files: