42#ifndef TEUCHOS_REDUCTION_OP_HELPERS_HPP
43#define TEUCHOS_REDUCTION_OP_HELPERS_HPP
57template<
typename Ordinal,
typename T,
typename Serializer>
68 const Ordinal charCount
69 ,
const char charInBuffer[]
70 ,
char charInoutBuffer[]
87template<
typename Ordinal,
typename T,
98 ) :
Base(reductOp, serializer) {}
110template<
typename Ordinal,
typename T>
122 ) :
Base(reductOp, serializer) {}
131template<
typename Ordinal,
typename T>
142 const Ordinal charCount
143 ,
const char charInBuffer[]
144 ,
char charInoutBuffer[]
162template<
typename Ordinal,
typename T,
typename Serializer>
170template<
typename Ordinal,
typename T,
typename Serializer>
172 const Ordinal charCount
173 ,
const char charInBuffer[]
174 ,
char charInoutBuffer[]
180 inoutBuffer(charCount,charInoutBuffer,
serializer_);
182 inBuffer.getCount(),inBuffer.getBuffer(),inoutBuffer.getBuffer()
190template<
typename Ordinal,
typename T>
198template<
typename Ordinal,
typename T>
200 const Ordinal charCount
201 ,
const char charInBuffer[]
202 ,
char charInoutBuffer[]
208 inoutBuffer(*
serializer_,charCount,charInoutBuffer);
CharToReferenceTypeReductionOp & operator=(const CharToReferenceTypeReductionOp &)
RCP< const ReferenceTypeReductionOp< Ordinal, T > > reductOp_
RCP< const Serializer< Ordinal, T > > serializer_
CharToReferenceTypeReductionOp(const RCP< const Serializer< Ordinal, T > > &serializer, const RCP< const ReferenceTypeReductionOp< Ordinal, T > > &reductOp)
CharToReferenceTypeReductionOp(const CharToReferenceTypeReductionOp &)
void reduce(const Ordinal charCount, const char charInBuffer[], char charInoutBuffer[]) const
CharToReferenceTypeReductionOp()
void reduce(const Ordinal charCount, const char charInBuffer[], char charInoutBuffer[]) const
CharToValueTypeReductionOpImp()
CharToValueTypeReductionOpImp(const RCP< const ValueTypeReductionOp< Ordinal, T > > &reductOp, const RCP< const Serializer > &serializer)
RCP< const Serializer > serializer_
CharToValueTypeReductionOpImp(const CharToValueTypeReductionOpImp &)
RCP< const ValueTypeReductionOp< Ordinal, T > > reductOp_
CharToValueTypeReductionOpImp & operator=(const CharToValueTypeReductionOpImp &)
DS::DefaultSerializerType Serializer
CharToValueTypeReductionOpImp< Ordinal, T, Serializer > Base
CharToValueTypeReductionOp(const RCP< const ValueTypeReductionOp< Ordinal, T > > &reductOp, const RCP< const Serializer > &serializer=DS::getDefaultSerializerRCP())
DefaultSerializer< Ordinal, T > DS
CharToValueTypeReductionOp(const RCP< const ValueTypeReductionOp< Ordinal, T > > &reductOp, const RCP< const Serializer > &serializer)
CharToValueTypeReductionOpImp< Ordinal, T, Serializer > Base
Encapsulate how an array of onst objects with reference sematics is deserialized from a char[] array ...
const T *const * getBuffer() const
Encapsulate how an array of non-const serialized objects with value sematics stored in a char[] array...
A class for instantiating a default serialization object.
SerializationTraits< Ordinal, T > DefaultSerializerType
Typename of default serializer.
static Teuchos::RCP< DefaultSerializerType > getDefaultSerializerRCP()
Return an RCP of an instance of the default serializer.
Smart reference counting pointer class for automatic garbage collection.
Encapsulate how an array of non-const objects with reference sematics is deserialized from a char[] a...
T *const * getBuffer() const
Base interface class for user-defined reduction operations for objects that use reference semantics.
Strategy interface for the indirect serializing and deserializing objects of a given type handled usi...
Encapsulate how an array of non-const serialized objects with value sematics stored in a char[] array...
Base interface class for user-defined reduction operations for objects that use value semantics.