All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
roboptim::Split< T > Class Template Reference

Select an element of a function's output. More...

#include <roboptim/core/operator/split.hh>

Inheritance diagram for roboptim::Split< T >:

Public Types

typedef T::traits_t traits_t
 Import traits type. More...
 
typedef
DifferentiableFunction::interval_t 
interval_t
 Import interval type. More...
 

Public Member Functions

 ROBOPTIM_TWICE_DIFFERENTIABLE_FUNCTION_FWD_TYPEDEFS_ (GenericTwiceDifferentiableFunction< traits_t >)
 
 Split (boost::shared_ptr< const T > fct, size_type functionId)
 Split operator constructor. More...
 
 ~Split ()
 

Protected Member Functions

virtual void impl_compute (result_ref result, const_argument_ref argument) const
 
virtual void impl_gradient (gradient_ref gradient, const_argument_ref argument, size_type functionId=0) const
 
virtual void impl_hessian (hessian_ref hessian, const_argument_ref argument, size_type functionId=0) const
 
virtual void impl_derivative (gradient_ref derivative, value_type argument, size_type order=1) const
 
template<>
void impl_gradient (gradient_ref, const_argument_ref, size_type) const
 
template<>
void impl_hessian (hessian_ref, const_argument_ref, size_type) const
 
template<>
void impl_hessian (hessian_ref, const_argument_ref, size_type) const
 
template<>
void impl_derivative (gradient_ref, value_type, size_type) const
 
template<>
void impl_derivative (gradient_ref, value_type, size_type) const
 
template<>
void impl_derivative (gradient_ref, value_type, size_type) const
 

Detailed Description

template<typename T>
class roboptim::Split< T >

Select an element of a function's output.

Template Parameters
Tinput function type.

Member Typedef Documentation

template<typename T >
typedef DifferentiableFunction::interval_t roboptim::Split< T >::interval_t

Import interval type.

template<typename T >
typedef T::traits_t roboptim::Split< T >::traits_t

Import traits type.

Constructor & Destructor Documentation

template<typename T >
roboptim::Split< T >::Split ( boost::shared_ptr< const T >  fct,
size_type  functionId 
)
explicit

Split operator constructor.

Parameters
fctinput function.
functionIdindex of the output to select.
template<typename T >
roboptim::Split< T >::~Split ( )

Member Function Documentation

template<typename T >
void roboptim::Split< T >::impl_compute ( result_ref  result,
const_argument_ref  argument 
) const
protectedvirtual
template<typename T >
void roboptim::Split< T >::impl_derivative ( gradient_ref  derivative,
value_type  argument,
size_type  order = 1 
) const
protectedvirtual
template<>
void roboptim::Split< Function >::impl_derivative ( gradient_ref  ,
value_type  ,
size_type   
) const
inlineprotected
template<>
void roboptim::Split< DifferentiableFunction >::impl_derivative ( gradient_ref  ,
value_type  ,
size_type   
) const
inlineprotected
template<>
void roboptim::Split< TwiceDifferentiableFunction >::impl_derivative ( gradient_ref  ,
value_type  ,
size_type   
) const
inlineprotected
template<typename T >
virtual void roboptim::Split< T >::impl_gradient ( gradient_ref  gradient,
const_argument_ref  argument,
size_type  functionId = 0 
) const
protectedvirtual
template<>
void roboptim::Split< Function >::impl_gradient ( gradient_ref  ,
const_argument_ref  ,
size_type    
) const
inlineprotected
template<typename T >
virtual void roboptim::Split< T >::impl_hessian ( hessian_ref  hessian,
const_argument_ref  argument,
size_type  functionId = 0 
) const
protectedvirtual
template<>
void roboptim::Split< Function >::impl_hessian ( hessian_ref  ,
const_argument_ref  ,
size_type    
) const
inlineprotected
template<>
void roboptim::Split< DifferentiableFunction >::impl_hessian ( hessian_ref  ,
const_argument_ref  ,
size_type    
) const
inlineprotected
template<typename T >
roboptim::Split< T >::ROBOPTIM_TWICE_DIFFERENTIABLE_FUNCTION_FWD_TYPEDEFS_ ( GenericTwiceDifferentiableFunction< traits_t )