3#include <boost/pool/singleton_pool.hpp> 
   11                         std::vector<int>* shape) {
 
   12  vals_.push_back(std::pair<const char*, boost::spirit::hold_any>(field, val));
 
   17    shapes_.push_back(*shape);
 
   22                     std::vector<int>* shape) {
 
   23  fields_.push_back(std::string(field));
 
   24  return AddValBase(field, val, shape);
 
 
   28                     std::vector<int>* shape) {
 
   29  fields_.push_back(field);
 
   30  return AddValBase(field.c_str(), val, shape);
 
 
   35  manager_->AddDatum(
this);
 
 
   39Datum::Datum(
Recorder* m, std::string title) : title_(title), manager_(m) {
 
   68void* Datum::operator 
new(
size_t size) {
 
   69  if (size != 
sizeof(Datum)) {
 
   70    return ::operator 
new(size);
 
   74    void* ptr = DatumPool::malloc();
 
   79    std::new_handler globalNewHandler = std::set_new_handler(0);
 
   80    std::set_new_handler(globalNewHandler);
 
   82    if (globalNewHandler) {
 
   85      throw std::bad_alloc();
 
 
   91void Datum::operator 
delete(
void* rawMemory) 
throw() {
 
   95  DatumPool::free(rawMemory);
 
 
Used to specify and send a collection of key-value pairs to the Recorder for recording.
 
Datum * AddVal(const char *field, boost::spirit::hold_any val, std::vector< int > *shape=NULL)
Add an arbitrary field-value pair to the datum.
 
std::vector< std::string > Fields
 
std::vector< Shape > Shapes
 
const Fields & fields()
Returns a vector of all field names that have been added to this datum.
 
const Shapes & shapes()
Returns a vector of all shapes (pointers to vectors of ints) that have been added to this datum.
 
void Record()
Record this datum to its Recorder.
 
std::vector< Entry > Vals
 
std::string title()
Returns the datum's title as specified during the datum's creation.
 
const Vals & vals()
Returns a vector of all field-value pairs that have been added to this datum.
 
Collects and manages output data generation for the cyclus core and agents during a simulation.
 
basic_hold_any< char > hold_any
 
taken directly from OsiSolverInterface.cpp on 2/17/14 from https://projects.coin-or....
 
boost::singleton_pool< Datum, sizeof(Datum)> DatumPool