RTOpPack::ROpIndexReductionBase< Scalar > Class Template Reference

Simple base class for all reduction operators that return a simple index reduction object. More...

#include <RTOpPack_RTOpTHelpers.hpp>

Inheritance diagram for RTOpPack::ROpIndexReductionBase< Scalar >:

[legend]
List of all members.

Overridden from RTOpT

void get_reduct_type_num_entries (int *num_values, int *num_indexes, int *num_chars) const
 
Teuchos::RefCountPtr< ReductTargetreduct_obj_create () const
 
void reduce_reduct_objs (const ReductTarget &_in_reduct_obj, ReductTarget *_inout_reduct_obj) const
 Default implementation here is for a sum.
void reduct_obj_reinit (ReductTarget *reduct_obj) const
 
void extract_reduct_obj_state (const ReductTarget &reduct_obj, int num_values, primitive_value_type value_data[], int num_indexes, index_type index_data[], int num_chars, char_type char_data[]) const
 
void load_reduct_obj_state (int num_values, const primitive_value_type value_data[], int num_indexes, const index_type index_data[], int num_chars, const char_type char_data[], ReductTarget *reduct_obj) const
 

Public Types

typedef RTOpT< Scalar >::primitive_value_type primitive_value_type
 

Public Member Functions

 ROpIndexReductionBase (const index_type &initReductObjValue=Teuchos::ScalarTraits< index_type >::zero())
 
index_type getRawVal (const ReductTarget &reduct_obj) const
 
void setRawVal (const index_type &rawVal, ReductTarget *reduct_obj) const
 

Protected Member Functions

void initReductObjValue (const index_type &initReductObjValue)
 
const index_typeinitReductObjValue () const

Private Attributes

index_type initReductObjValue_

Detailed Description

template<class Scalar>
class RTOpPack::ROpIndexReductionBase< Scalar >

Simple base class for all reduction operators that return a simple index reduction object.

Subclasses have to minimally define apply_op(). Subclasses should also override reduce_reduct_objs() if the reduction is not a simple summation.

Definition at line 437 of file RTOpPack_RTOpTHelpers.hpp.


Member Typedef Documentation

template<class Scalar>
typedef RTOpT<Scalar>::primitive_value_type RTOpPack::ROpIndexReductionBase< Scalar >::primitive_value_type
 

Reimplemented from RTOpPack::RTOpT< Scalar >.

Reimplemented in RTOpPack::RTOpBoolReduceAndTransform< Scalar >.

Definition at line 439 of file RTOpPack_RTOpTHelpers.hpp.


Constructor & Destructor Documentation

template<class Scalar>
RTOpPack::ROpIndexReductionBase< Scalar >::ROpIndexReductionBase const index_type initReductObjValue = Teuchos::ScalarTraits<index_type>::zero()  )  [inline]
 

Definition at line 441 of file RTOpPack_RTOpTHelpers.hpp.


Member Function Documentation

template<class Scalar>
index_type RTOpPack::ROpIndexReductionBase< Scalar >::getRawVal const ReductTarget reduct_obj  )  const [inline]
 

Definition at line 445 of file RTOpPack_RTOpTHelpers.hpp.

template<class Scalar>
void RTOpPack::ROpIndexReductionBase< Scalar >::setRawVal const index_type rawVal,
ReductTarget reduct_obj
const [inline]
 

Definition at line 451 of file RTOpPack_RTOpTHelpers.hpp.

template<class Scalar>
void RTOpPack::ROpIndexReductionBase< Scalar >::get_reduct_type_num_entries int *  num_values,
int *  num_indexes,
int *  num_chars
const [inline, virtual]
 

Reimplemented from RTOpPack::RTOpT< Scalar >.

Definition at line 462 of file RTOpPack_RTOpTHelpers.hpp.

template<class Scalar>
Teuchos::RefCountPtr<ReductTarget> RTOpPack::ROpIndexReductionBase< Scalar >::reduct_obj_create  )  const [inline, virtual]
 

Reimplemented from RTOpPack::RTOpT< Scalar >.

Definition at line 473 of file RTOpPack_RTOpTHelpers.hpp.

template<class Scalar>
void RTOpPack::ROpIndexReductionBase< Scalar >::reduce_reduct_objs const ReductTarget _in_reduct_obj,
ReductTarget _inout_reduct_obj
const [inline, virtual]
 

Default implementation here is for a sum.

Reimplemented from RTOpPack::RTOpT< Scalar >.

Reimplemented in RTOpPack::RTOpBoolReduceAndTransform< Scalar >.

Definition at line 478 of file RTOpPack_RTOpTHelpers.hpp.

template<class Scalar>
void RTOpPack::ROpIndexReductionBase< Scalar >::reduct_obj_reinit ReductTarget reduct_obj  )  const [inline, virtual]
 

Reimplemented from RTOpPack::RTOpT< Scalar >.

Definition at line 488 of file RTOpPack_RTOpTHelpers.hpp.

template<class Scalar>
void RTOpPack::ROpIndexReductionBase< Scalar >::extract_reduct_obj_state const ReductTarget reduct_obj,
int  num_values,
primitive_value_type  value_data[],
int  num_indexes,
index_type  index_data[],
int  num_chars,
char_type  char_data[]
const [inline, virtual]
 

Reimplemented from RTOpPack::RTOpT< Scalar >.

Definition at line 493 of file RTOpPack_RTOpTHelpers.hpp.

template<class Scalar>
void RTOpPack::ROpIndexReductionBase< Scalar >::load_reduct_obj_state int  num_values,
const primitive_value_type  value_data[],
int  num_indexes,
const index_type  index_data[],
int  num_chars,
const char_type  char_data[],
ReductTarget reduct_obj
const [inline, virtual]
 

Reimplemented from RTOpPack::RTOpT< Scalar >.

Definition at line 512 of file RTOpPack_RTOpTHelpers.hpp.

template<class Scalar>
void RTOpPack::ROpIndexReductionBase< Scalar >::initReductObjValue const index_type initReductObjValue  )  [inline, protected]
 

Definition at line 534 of file RTOpPack_RTOpTHelpers.hpp.

template<class Scalar>
const index_type& RTOpPack::ROpIndexReductionBase< Scalar >::initReductObjValue  )  const [inline, protected]
 

Definition at line 534 of file RTOpPack_RTOpTHelpers.hpp.


Member Data Documentation

template<class Scalar>
index_type RTOpPack::ROpIndexReductionBase< Scalar >::initReductObjValue_ [private]
 

Definition at line 534 of file RTOpPack_RTOpTHelpers.hpp.


The documentation for this class was generated from the following file:
Generated on Thu Sep 18 12:30:44 2008 for RTOp Package Browser (Single Doxygen Collection) by doxygen 1.3.9.1