creativity  v1.3.0
Agent-based model of creativity and piracy
Public Member Functions | Public Attributes | Protected Member Functions | List of all members
creativity::cmdargs::Series Class Reference

CmdArgs subclass for creativity-series arguments (for generating series values from crstate files). More...

#include <creativity/cmdargs/Series.hpp>

Public Member Functions

 Series ()
 Constructor for series arguments; takes no arguments.
 
virtual std::string usage () const override
 Overridden to add " FILE [FILE ...]".
 
virtual std::string help () const override
 Overridden to add info about input files.
 
virtual std::string versionSuffix () const override
 Overridden to add " -- simulation data series generator".
 
- Public Member Functions inherited from creativity::cmdargs::CmdArgs
void parse (int argc, char const *const *argv)
 Parses options and verifies them. More...
 
template<typename T , typename A >
std::enable_if< not std::is_unsigned< T >::value, boost::program_options::typed_value< std::vector< T, A > > * >::type value (std::vector< T, A > &store)
 Takes a std::vector of values for options that store multiple values. More...
 
template<typename T , typename A >
std::enable_if< std::is_unsigned< T >::value, boost::program_options::typed_value< std::vector< Validation< T > > > * >::type value (std::vector< T, A > &store)
 Takes a std::vector of values for options that store multiple values. More...
 
virtual std::string version () const
 Returns a version string.
 

Public Attributes

std::string series = "net_u,reader_spending,reader_market_spending,reader_piracy_spending,reader_public_spending,reader_spending_total,books_bought,books_pirated,books_public_copies,books_written_pc,book_quality,book_sales,book_revenue,book_profit,book_author_effort,book_author_scale,book_p0"
 comma-separated list of series to display
 
bool help_series = false
 A plea for help about possible series values.
 
eris::eris_time_t periods = 0
 The number of periods. More...
 
bool allow_unused_periods = false
 Whether files are allowed to contain more than periods periods.
 
eris::eris_time_t piracy_begins = 0
 The piracy begins period. More...
 
eris::eris_time_t policy_begins = 0
 The policy begins period. More...
 
bool ignore_errors = false
 If true, just warn instead of aborting for files that can't be read or contain invalid period values.
 
unsigned int double_precision = std::numeric_limits<double>::max_digits10
 The precision of double values. The default is full double precision.
 
unsigned int threads = 0
 Number of threads to use.
 
unsigned int preload = 0
 Number of files to preload from disk into memory.
 
std::vector< std::string > input
 The input files to load data from.
 
bool memory_xz = false
 If true, decompress xz files into memory.
 
std::string tmpdir
 If memory_xz is false, decompress files into temporary files in this directory instead of into the same directory as the input file.
 
std::string output_dir
 The output directory; each variable VAR will be written to a "series-VAR.csv" file in the directory. More...
 

Protected Member Functions

virtual void addOptions () override
 Adds series command-line options into the option descriptions.
 
virtual void postParse (boost::program_options::variables_map &vars) override
 Overridden to make sure an output directory is given.
 
- Protected Member Functions inherited from creativity::cmdargs::CmdArgs
 CmdArgs ()=default
 Default constructor is protected; use a suitable subclass.
 

Additional Inherited Members

- Static Public Member Functions inherited from creativity::cmdargs::CmdArgs
template<typename T >
static std::enable_if< not std::is_unsigned< T >::value and not std::is_same< T, bool >::value, boost::program_options::typed_value< T > *>::type value (T &store)
 Creates an option value object without any special validation wrapper class. More...
 
template<typename T >
static std::enable_if< std::is_unsigned< T >::value and not std::is_same< T, bool >::value, boost::program_options::typed_value< Validation< T > > * >::type value (T &storage)
 Creates an option value object around an unsigned primitive type, with automatic value storage and default value. More...
 
static boost::program_options::typed_value< bool > * value (bool &store)
 Creates an option value for a boolean value, that is, for an switch without an argument, with default value as given in store.
 
template<typename V >
static boost::program_options::typed_value< V > * value (typename V::value_type &store)
 Creates an option value object with explicit validation wrapper class V. More...
 
template<typename V , typename A >
static boost::program_options::typed_value< std::vector< V > > * value (std::vector< typename V::value_type, A > &store)
 Creates an option value object around a vector of options with validation wrapper class V applied to each element of the vector. More...
 
template<long minimum, long denom = 1, typename T >
static boost::program_options::typed_value< Min< T, minimum, denom > > * min (T &store)
 Shortcut for value<Min<T, n, d>>(val) with T last (so that it can be inferred from val)
 
template<long maximum, long denom = 1, typename T >
static boost::program_options::typed_value< Max< T, maximum, denom > > * max (T &store)
 Shortcut for value<Max<T, n, d>>(val) with T last (so that it can be inferred from val)
 
template<long min, long max, long denom = 1, typename T >
static boost::program_options::typed_value< Range< T, min, max, denom > > * range (T &store)
 Shortcut for value<Range<T, a, b, d>>(val) with T last (so that it can be inferred from val)
 
template<long lower, long denom = 1, typename T >
static boost::program_options::typed_value< Above< T, lower, denom > > * above (T &store)
 Shortcut for value<Above<T, a, d>>(val) with T last (so that it can be inferred from val)
 
template<long upper, long denom = 1, typename T >
static boost::program_options::typed_value< Below< T, upper, denom > > * below (T &store)
 Shortcut for value<Below<T, b, d>>(val) with T last (so that it can be inferred from val)
 
- Protected Attributes inherited from creativity::cmdargs::CmdArgs
std::string prog_name_
 The program name, populated by parse(). More...
 
boost::program_options::options_description options_
 The options descriptions variable for all options.
 
boost::program_options::options_description invisible_
 Like options_, but for hidden options that aren't to be displayed in –help output.
 
boost::program_options::positional_options_description positional_
 Positional options object.
 

Detailed Description

CmdArgs subclass for creativity-series arguments (for generating series values from crstate files).

Member Data Documentation

§ output_dir

std::string creativity::cmdargs::Series::output_dir

The output directory; each variable VAR will be written to a "series-VAR.csv" file in the directory.

The directory will be created if it doesn't yet exist.

§ periods

eris::eris_time_t creativity::cmdargs::Series::periods = 0

The number of periods.

If default (0), read from the first file. Files must have at least this number of periods.

§ piracy_begins

eris::eris_time_t creativity::cmdargs::Series::piracy_begins = 0

The piracy begins period.

All simulations must have the same value (unless it is larger than periods).

The default (0) reads the value from the first file loaded.

§ policy_begins

eris::eris_time_t creativity::cmdargs::Series::policy_begins = 0

The policy begins period.

All simulations must have the same value (unless it is larger than periods).

The default (0) reads the value from the first file loaded.

Inheritance diagram for creativity::cmdargs::Series:
[legend]
Collaboration diagram for creativity::cmdargs::Series:
[legend]

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