34 #ifndef CARTOBASE_ALGORITHM_ALGORITHM_H    35 #define CARTOBASE_ALGORITHM_ALGORITHM_H    74                     const std::string &doc ) :
    77     _documentation( doc ) {}
    86   std::string _documentation;
    89   std::vector< std::pair< std::string, T > > _choices;
   107   template <
typename T>
   109                                        const std::string &documentation );
   110   template <
typename T>
   112                                         const std::string &documentation );
   119   std::vector< rc_ptr< BaseParameter > > _parameters;
   127 template <
typename T>
   133   _parameter( pm._parameter ) {}
   140     _parameter._optional = o;
   146     return choices( 
"", value );
   152     _parameter._choices.push_back( std::pair<std::string, T>( label,
   172   template <
typename T>
   180   std::vector< carto::Object > _unnamedParameters;
   197 template <
typename T>
   206 template <
typename T>
   209                            const std::string &doc )
   218 template <
typename T>
   221                             const std::string &doc )
   233 template <
typename T>
   249 #endif //ifndef CARTOBASE_ALGORITHM_ALGORITHM_H ParameterModifier< T > outputParameter(T &ref, const std::string &name, const std::string &documentation)
ParameterModifier< T > optional(bool o=true)
ParameterModifier(const ParameterModifier< T > &pm)
std::ostream & operator<<(std::ostream &out, const VoxelValue< T, C > &aa)
ParameterModifier< T > choice(const T &value)
const AlgorithmCaller::LaunchExecution execute
Parameter(T &ref, const std::string &name, const std::string &doc)
Reference-counting pointer. 
ParameterModifier(Parameter< T > &p)
AlgorithmCaller & operator<<(const T &)
A ref is a const_ref which can reference non constant objects. 
ParameterModifier< T > inputParameter(T &ref, const std::string &name, const std::string &documentation)
static Object value()
factory function: builds an Object by using the default constructor 
ParameterModifier< T > choice(const std::string &label, const T &value)