libSBML C++ API  5.18.0
ConversionOption Class Reference

Detailed Description

A single configuration setting for an SBML converter.

This class of objects is defined by libSBML only and has no direct equivalent in terms of SBML components. It is a class used in the implementation of extra functionality provided by libSBML.

LibSBML provides a number of converters that can perform transformations on SBML documents. These converters allow their behaviors to be controlled by setting property values. Converter properties are communicated using objects of class ConversionProperties, and within such objects, individual options are encapsulated using ConversionOption objects.

A ConversionOption object consists of four parts:

  • A key, acting as the name of the option.
  • A value of this option.
  • A type for the value; the type code is chosen froman enumeration whose names all begin with the prefix CNV_TYPE_. (See the separate subsection below for more information.)
  • A description consisting of a text string that describes the option in some way.

There are no constraints on the values of keys or descriptions; authors of SBML converters are free to choose them as they see fit.

Conversion option data types

An option in ConversionOption must have a data type declared, to indicate whether it is a string value, an integer, and so forth. The possible types of values are taken from the enumeration ConversionOptionType_t. The following are the possible values:

Enumerator Meaning
CNV_TYPE_BOOL Indicates the value type is a Boolean.
CNV_TYPE_DOUBLE Indicates the value type is a double-sized float.
CNV_TYPE_INT Indicates the value type is an integer.
CNV_TYPE_SINGLE Indicates the value type is a float.
CNV_TYPE_STRING Indicates the value type is a string.
See also
ConversionProperties

Public Member Functions

virtual ConversionOptionclone () const
 Creates and returns a deep copy of this ConversionOption object. More...
 
 ConversionOption (const std::string &key, const std::string value="", ConversionOptionType_t type=CNV_TYPE_STRING, const std::string description="")
 Creates a new ConversionOption. More...
 
 ConversionOption (const std::string &key, const char *value, const std::string description="")
 Creates a new ConversionOption specialized for string-type options. More...
 
 ConversionOption (const std::string &key, bool value, const std::string description="")
 Creates a new ConversionOption specialized for Boolean-type options. More...
 
 ConversionOption (const std::string &key, double value, const std::string description="")
 Creates a new ConversionOption specialized for double-type options. More...
 
 ConversionOption (const std::string &key, float value, const std::string description="")
 Creates a new ConversionOption specialized for float-type options. More...
 
 ConversionOption (const std::string &key, int value, const std::string description="")
 Creates a new ConversionOption specialized for integer-type options. More...
 
 ConversionOption (const ConversionOption &orig)
 Copy constructor; creates a copy of an ConversionOption object. More...
 
virtual bool getBoolValue () const
 Returns the value of this option as a Boolean. More...
 
const std::string & getDescription () const
 Returns the description string for this option. More...
 
virtual double getDoubleValue () const
 Returns the value of this option as a double. More...
 
virtual float getFloatValue () const
 Returns the value of this option as a float. More...
 
virtual int getIntValue () const
 Returns the value of this option as an integer. More...
 
const std::string & getKey () const
 Returns the key for this option. More...
 
ConversionOptionType_t getType () const
 Returns the type of this option. More...
 
const std::string & getValue () const
 Returns the value of this option. More...
 
ConversionOptionoperator= (const ConversionOption &rhs)
 Assignment operator for ConversionOption. More...
 
virtual void setBoolValue (bool value)
 Set the value of this option to a given Boolean value. More...
 
void setDescription (const std::string &description)
 Sets the description text for this option. More...
 
virtual void setDoubleValue (double value)
 Set the value of this option to a given double value. More...
 
virtual void setFloatValue (float value)
 Set the value of this option to a given float value. More...
 
virtual void setIntValue (int value)
 Set the value of this option to a given int value. More...
 
void setKey (const std::string &key)
 Sets the key for this option. More...
 
void setType (ConversionOptionType_t type)
 Sets the type of this option. More...
 
void setValue (const std::string &value)
 Sets the value for this option. More...
 
virtual ~ConversionOption ()
 Destroys this object. More...
 

Constructor & Destructor Documentation

ConversionOption::ConversionOption ( const std::string &  key,
const std::string  value = "",
ConversionOptionType_t  type = CNV_TYPE_STRING,
const std::string  description = "" 
)

Creates a new ConversionOption.

This is the general constructor, taking arguments for all aspects of an option. Other constructors exist with different arguments.

The conversion type argument value must be one of the values defined in the enumeration ConversionOptionType_t.
Parameters
keythe key for this option.
valuean optional value for this option.
typethe type of this option.
descriptionthe description for this option.
ConversionOption::ConversionOption ( const std::string &  key,
const char *  value,
const std::string  description = "" 
)

Creates a new ConversionOption specialized for string-type options.

Parameters
keythe key for this option.
valuethe value for this option.
descriptionan optional description.
ConversionOption::ConversionOption ( const std::string &  key,
bool  value,
const std::string  description = "" 
)

Creates a new ConversionOption specialized for Boolean-type options.

Parameters
keythe key for this option.
valuethe value for this option.
descriptionan optional description.
ConversionOption::ConversionOption ( const std::string &  key,
double  value,
const std::string  description = "" 
)

Creates a new ConversionOption specialized for double-type options.

Parameters
keythe key for this option.
valuethe value for this option.
descriptionan optional description.
ConversionOption::ConversionOption ( const std::string &  key,
float  value,
const std::string  description = "" 
)

Creates a new ConversionOption specialized for float-type options.

Parameters
keythe key for this option.
valuethe value for this option.
descriptionan optional description.
ConversionOption::ConversionOption ( const std::string &  key,
int  value,
const std::string  description = "" 
)

Creates a new ConversionOption specialized for integer-type options.

Parameters
keythe key for this option.
valuethe value for this option.
descriptionan optional description.
ConversionOption::ConversionOption ( const ConversionOption orig)

Copy constructor; creates a copy of an ConversionOption object.

Parameters
origthe ConversionOption object to copy.
ConversionOption::~ConversionOption ( )
virtual

Destroys this object.

Member Function Documentation

ConversionOption * ConversionOption::clone ( ) const
virtual

Creates and returns a deep copy of this ConversionOption object.

Returns
the (deep) copy of this ConversionOption object.
bool ConversionOption::getBoolValue ( ) const
virtual

Returns the value of this option as a Boolean.

Returns
the value of this option.
const std::string & ConversionOption::getDescription ( ) const

Returns the description string for this option.

Returns
the description of this option.
double ConversionOption::getDoubleValue ( ) const
virtual

Returns the value of this option as a double.

Returns
the value of this option.
float ConversionOption::getFloatValue ( ) const
virtual

Returns the value of this option as a float.

Returns
the value of this option as a float.
int ConversionOption::getIntValue ( ) const
virtual

Returns the value of this option as an integer.

Returns
the value of this option, as an int.
const std::string & ConversionOption::getKey ( ) const

Returns the key for this option.

Returns
the key, as a string.
ConversionOptionType_t ConversionOption::getType ( ) const

Returns the type of this option.

Returns
the type of this option.
const std::string & ConversionOption::getValue ( ) const

Returns the value of this option.

Returns
the value of this option, as a string.
ConversionOption & ConversionOption::operator= ( const ConversionOption rhs)

Assignment operator for ConversionOption.

Parameters
rhsthe object whose values are used as the basis of the assignment.
void ConversionOption::setBoolValue ( bool  value)
virtual

Set the value of this option to a given Boolean value.

Invoking this method will also set the type of the option to CNV_TYPE_BOOL.

Parameters
valuethe Boolean value to set.
void ConversionOption::setDescription ( const std::string &  description)

Sets the description text for this option.

Parameters
descriptionthe description to set for this option.
void ConversionOption::setDoubleValue ( double  value)
virtual

Set the value of this option to a given double value.

Invoking this method will also set the type of the option to CNV_TYPE_DOUBLE.

Parameters
valuethe value to set.
void ConversionOption::setFloatValue ( float  value)
virtual

Set the value of this option to a given float value.

Invoking this method will also set the type of the option to CNV_TYPE_SINGLE.

Parameters
valuethe value to set.
void ConversionOption::setIntValue ( int  value)
virtual

Set the value of this option to a given int value.

Invoking this method will also set the type of the option to CNV_TYPE_INT.

Parameters
valuethe value to set.
void ConversionOption::setKey ( const std::string &  key)

Sets the key for this option.

Parameters
keya string representing the key to set.
void ConversionOption::setType ( ConversionOptionType_t  type)

Sets the type of this option.

The conversion type argument value must be one of the values defined in the enumeration ConversionOptionType_t.
Parameters
typethe type value to use.
void ConversionOption::setValue ( const std::string &  value)

Sets the value for this option.

Parameters
valuethe value to set, as a string.