FLOPC++
Class Hierarchy
This inheritance list is sorted roughly, but not completely, alphabetically:
[detail level 12345]
 Cflopc::Boolean_base
 Cflopc::Boolean_and
 Cflopc::Boolean_bool
 Cflopc::Boolean_Constant
 Cflopc::Boolean_negate
 Cflopc::Boolean_or
 Cflopc::Boolean_SUBSETREF
 Cflopc::Comparison
 Cflopc::MP::Coef
 Cflopc::MP::CoefLess
 Cflopc::Constant_baseBase class for all "constant" types of data
 Cflopc::Constant_abs
 Cflopc::Constant_ceil
 Cflopc::Constant_double
 Cflopc::Constant_exp
 Cflopc::Constant_floor
 Cflopc::Constant_index
 Cflopc::Constant_max
 Cflopc::Constant_min
 Cflopc::Constant_pos
 Cflopc::Constant_product
 Cflopc::Constant_sum
 Cflopc::Constant_unary_minus
 Cflopc::DataRefReference to a set of data
 Cflopc::Constraint_base
 Cflopc::FunctorFunction object. Often used
 Cflopc::Constant_max::MaxFunctor
 Cflopc::Constant_min
 Cflopc::Constant_product
 Cflopc::Constant_sum
 Cflopc::DataRefReference to a set of data
 Cflopc::Expression_sum::SumFunctor
 Cflopc::Functor_conditional
 Cflopc::InsertFunctor< nbr >Internal representation of a "set"
 Cflopc::insertFunctor< nbr >Inserter for construction of a subset
 Cflopc::MP::GenerateFunctor
 Cflopc::MP_dataInput data set.This is one of the main public interface classes. It is normally directly constructed given a set of indices (domain) over which it is valid. If the data is not bound at construction, either the value() or initialize() method must be called which (deep) copies in the actual data. If one wishes to refer to external data instead rather than doing a deep copy, use the constructor which takes the value pointer as an argument. This copies the original data pointer value (rather than a deep copy).
This is used for construction of :
 Cflopc::MP_domain_baseReference to a set of index values
 Cflopc::MP_variableSymantic representation of a variable.This is one of the main public interface classes. It should be directly declared by clients of the FlopC++. The parametersof construction are MP_set s which specify the indexes over which the variable is defined
 Cflopc::Handle< T >Utility for doing reference counted pointers
 Cflopc::MP_domainRange over which some other constuct is defined.This is one of the main public interface classes. One uses this in the context of a constraint, objective, variable, or data. It is usually used in conjunction with an MP_set, or a subset, but can be used without one. It is the range over which the other construct is defined
 Cflopc::Handle< Boolean_base *>
 Cflopc::MP_booleanReference counted class for all "boolean" types of data.This contains counters to ConstantBase pointers. These pointers may be of any of the Boolean_base * type. This can be a constant valued boolean as well. explain SUBSETREF
 Cflopc::Handle< Constant_base *>
 Cflopc::ConstantReference counted class for all "constant" types of data
 Cflopc::Handle< Constraint_base *>
 Cflopc::Constraint
 Cflopc::Handle< flopc::MP_domain_base *>
 Cflopc::Handle< MP_domain_base *>
 Cflopc::Handle< MP_expression_base *>
 Cflopc::MP_expressionSymbolic representation of a linear expression.This is one of the main public interface classes. It is the basis for all linear expressions, including constraints, objective function, and expressions involving indexes.
Although these can be created directly and independently, it is expected these will be created through the use of the operators which are later in this file. (operator+, operator-, etc.)
 Cflopc::Handle< MP_index_base *>
 Cflopc::MP_index_expRepresentation of an expression involving an index.This is one of the main public interface classes. It is used to create complex arrangements of index values.
Index expressions can involve:
 Cflopc::MessengerInteface for hooking up to internal flopc++ message handling.In more advanced use of FlopC++, it may be desirable to get access to internal calls for messages. In essence, sub-class this Messenger class, and register it with the MP_model. Also overload whichever message events you wish to handle
 Cflopc::NormalMessenger
 Cflopc::MP
 Cflopc::Expression_constant
 Cflopc::Expression_div
 Cflopc::Expression_mult
 Cflopc::Expression_operator
 Cflopc::Expression_sum
 Cflopc::MP_expression_baseThe base class for all expressions
 Cflopc::Expression_div
 Cflopc::Expression_mult
 Cflopc::Expression_operator
 Cflopc::Expression_sum
 Cflopc::TerminalExpressionThe base class for all expressions
 Cflopc::MP_index_baseInternal representation of a index
 Cflopc::MP_domain_baseReference to a set of index values
 Cflopc::MP_indexRepresentation of an index.This is one of the main public interface classes. It is used to iterate through, or index into an MP_domain. It is also used to share the 'current' index offsets between expressions which share an index
 Cflopc::MP_index_constant
 Cflopc::MP_index_difInternal representation of an index expression
 Cflopc::MP_index_multInternal representation of an index expression
 Cflopc::MP_index_subsetRef
 Cflopc::MP_index_sumInternal representation of an index expression
 Cflopc::SUBSETREFInternal representation of a "set"
 Cflopc::MP_modelThis is the anchor point for all constructs in a FlopC++ model.The constructors take an OsiSolverInterface, and (optionally) a replacemente for the Messenger class. There are some built-in changes to the verbosity for output.
The main methods to use are:
 Cflopc::NamedUtility interface class for adding a string name onto a structure
 Cflopc::MP_constraintSemantic representation of a linear constraint.This is one of the main public interface classes. It is always constructed through operator overloading between expressions, constants, and variables. There are many 'friend' overloaded operators to do the constuction. The basic idea is to make the constraint look like a paper-model constraint in C++ code. Once constructed, it should be added to the model
 Cflopc::MP_dataInput data set.This is one of the main public interface classes. It is normally directly constructed given a set of indices (domain) over which it is valid. If the data is not bound at construction, either the value() or initialize() method must be called which (deep) copies in the actual data. If one wishes to refer to external data instead rather than doing a deep copy, use the constructor which takes the value pointer as an argument. This copies the original data pointer value (rather than a deep copy).
This is used for construction of :
 Cflopc::MP_set_baseInternal representation of a "set"
 Cflopc::MP_variableSymantic representation of a variable.This is one of the main public interface classes. It should be directly declared by clients of the FlopC++. The parametersof construction are MP_set s which specify the indexes over which the variable is defined
 Cflopc::RowMajor
 Cflopc::MP_constraintSemantic representation of a linear constraint.This is one of the main public interface classes. It is always constructed through operator overloading between expressions, constants, and variables. There are many 'friend' overloaded operators to do the constuction. The basic idea is to make the constraint look like a paper-model constraint in C++ code. Once constructed, it should be added to the model
 Cflopc::MP_dataInput data set.This is one of the main public interface classes. It is normally directly constructed given a set of indices (domain) over which it is valid. If the data is not bound at construction, either the value() or initialize() method must be called which (deep) copies in the actual data. If one wishes to refer to external data instead rather than doing a deep copy, use the constructor which takes the value pointer as an argument. This copies the original data pointer value (rather than a deep copy).
This is used for construction of :
 Cflopc::MP_variableSymantic representation of a variable.This is one of the main public interface classes. It should be directly declared by clients of the FlopC++. The parametersof construction are MP_set s which specify the indexes over which the variable is defined