OpenDDS::SafetyProfile::DefaultEltPolicy< T > Struct Template Reference

#include <SafetyProfileSequence.h>

List of all members.

Public Types

typedef T & Element
typedef const T & ConstElement
typedef T ConstRawElement

Static Public Member Functions

static T & make_element (T &elt, seq_flag_type)
static void construct (T *, seq_size_type, seq_flag_type)
static void copy_n (const T *input, seq_size_type n, T *output)
static void move_n (T *in, seq_size_type n, T *out)
static void reset_n (T *, seq_size_type)
static T * destroy (T *buffer, seq_size_type)

Static Public Attributes

static const seq_size_type extra = 0

Detailed Description

template<typename T>
struct OpenDDS::SafetyProfile::DefaultEltPolicy< T >

Element Policy for sequence elements that are IDL "fixed-length" types. These types don't need initialization or destruction of elements in their allocbuf()/freebuf() functions.

Template Parameters:
T element type of the sequence

Definition at line 93 of file SafetyProfileSequence.h.


Member Typedef Documentation

template<typename T >
typedef const T& OpenDDS::SafetyProfile::DefaultEltPolicy< T >::ConstElement

Definition at line 95 of file SafetyProfileSequence.h.

template<typename T >
typedef T OpenDDS::SafetyProfile::DefaultEltPolicy< T >::ConstRawElement

Definition at line 96 of file SafetyProfileSequence.h.

template<typename T >
typedef T& OpenDDS::SafetyProfile::DefaultEltPolicy< T >::Element

Definition at line 94 of file SafetyProfileSequence.h.


Member Function Documentation

template<typename T >
static void OpenDDS::SafetyProfile::DefaultEltPolicy< T >::construct ( T *  ,
seq_size_type  ,
seq_flag_type   
) [inline, static]

Definition at line 99 of file SafetyProfileSequence.h.

00099 {}

template<typename T >
void OpenDDS::SafetyProfile::DefaultEltPolicy< T >::copy_n ( const T *  input,
seq_size_type  n,
T *  output 
) [inline, static]

Definition at line 357 of file SafetyProfileSequence.h.

Referenced by OpenDDS::SafetyProfile::DefaultEltPolicy< T >::move_n().

00358   {
00359     std::memcpy(out, in, n * sizeof(T));
00360   }

Here is the caller graph for this function:

template<typename T >
static T* OpenDDS::SafetyProfile::DefaultEltPolicy< T >::destroy ( T *  buffer,
seq_size_type   
) [inline, static]

Definition at line 103 of file SafetyProfileSequence.h.

00103 { return buffer; }

template<typename T >
static T& OpenDDS::SafetyProfile::DefaultEltPolicy< T >::make_element ( T &  elt,
seq_flag_type   
) [inline, static]

Definition at line 98 of file SafetyProfileSequence.h.

00098 { return elt; }

template<typename T >
static void OpenDDS::SafetyProfile::DefaultEltPolicy< T >::move_n ( T *  in,
seq_size_type  n,
T *  out 
) [inline, static]

Definition at line 101 of file SafetyProfileSequence.h.

References OpenDDS::SafetyProfile::DefaultEltPolicy< T >::copy_n().

00101 { copy_n(in, n, out); }

Here is the call graph for this function:

template<typename T >
static void OpenDDS::SafetyProfile::DefaultEltPolicy< T >::reset_n ( T *  ,
seq_size_type   
) [inline, static]

Definition at line 102 of file SafetyProfileSequence.h.

00102 {}


Member Data Documentation

template<typename T >
const seq_size_type OpenDDS::SafetyProfile::DefaultEltPolicy< T >::extra = 0 [static]

Definition at line 97 of file SafetyProfileSequence.h.


The documentation for this struct was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 10 Aug 2018 for OpenDDS by  doxygen 1.6.1