OpenLB 1.7
Loading...
Searching...
No Matches
Public Member Functions | List of all members
olb::FieldTypeRegistry< T, DESCRIPTOR, PLATFORM > Class Template Reference

Efficient indexing of dynamically allocated data fields. More...

#include <data.h>

+ Collaboration diagram for olb::FieldTypeRegistry< T, DESCRIPTOR, PLATFORM >:

Public Member Functions

template<typename FIELD_TYPE >
bool provides () const
 Returns true iff FIELD_TYPE is registered.
 
template<typename FIELD_TYPE >
AnyFieldType< T, DESCRIPTOR, PLATFORM > * get ()
 Return pointer to FIELD_TYPE data.
 
template<typename FIELD_TYPE >
void track (AnyFieldType< T, DESCRIPTOR, PLATFORM > *fieldType)
 Track newly allocated FIELD_TYPE.
 

Detailed Description

template<typename T, typename DESCRIPTOR, Platform PLATFORM>
class olb::FieldTypeRegistry< T, DESCRIPTOR, PLATFORM >

Efficient indexing of dynamically allocated data fields.

May be overloaded to manage platform specific access structures

Definition at line 116 of file data.h.

Member Function Documentation

◆ get()

template<typename T , typename DESCRIPTOR , Platform PLATFORM>
template<typename FIELD_TYPE >
AnyFieldType< T, DESCRIPTOR, PLATFORM > * olb::FieldTypeRegistry< T, DESCRIPTOR, PLATFORM >::get ( )
inline

Return pointer to FIELD_TYPE data.

FIELD_TYPE must be registered

Definition at line 135 of file data.h.

135 {
136 return _index.template get<FIELD_TYPE>();
137 }

◆ provides()

template<typename T , typename DESCRIPTOR , Platform PLATFORM>
template<typename FIELD_TYPE >
bool olb::FieldTypeRegistry< T, DESCRIPTOR, PLATFORM >::provides ( ) const
inline

Returns true iff FIELD_TYPE is registered.

FIELD_TYPE is registered if track<FIELD_TYPE> was called previously

Definition at line 126 of file data.h.

126 {
127 return _index.template provides<FIELD_TYPE>();
128 }

◆ track()

template<typename T , typename DESCRIPTOR , Platform PLATFORM>
template<typename FIELD_TYPE >
void olb::FieldTypeRegistry< T, DESCRIPTOR, PLATFORM >::track ( AnyFieldType< T, DESCRIPTOR, PLATFORM > * fieldType)
inline

Track newly allocated FIELD_TYPE.

Definition at line 141 of file data.h.

141 {
142 _index.template set<FIELD_TYPE>(fieldType);
143 }

The documentation for this class was generated from the following file: