rambrain
rambrain::managedPtr< T, dim > Class Template Reference

Main class to allocate memory that is managed by the rambrain memory defaultManager. More...

#include <managedMemory.h>

Public Member Functions

 managedPtr (const managedPtr< T, dim > &ref)
 copy ctor More...
 
template<typename... ctor_args>
 managedPtr (unsigned int n_elem, ctor_args...Args)
 instantiates managedPtr containing n_elem elements in the current dimension and passes Args as arguments to the constructor of these More...
 
 managedPtr ()
 with no arguments given, instantiates an array with one element More...
 
 ~managedPtr ()
 destructor More...
 
managedPtr< T, dim > & operator= (const managedPtr< T, dim > &ref)
 assignment operator More...
 
managedPtr< T, dim-1 > & operator[] (int i)
 simple getter for this dimension More...
 
const managedPtr< T, dim-1 > & operator[] (int i) const
 simple getter for this dimension More...
 

Private Attributes

unsigned int n_elem
 
managedPtr< T, dim-1 > * subPtrs
 

Detailed Description

template<class T, int dim = 1>
class rambrain::managedPtr< T, dim >

Main class to allocate memory that is managed by the rambrain memory defaultManager.

Warning
thread-safety
  • The object itself is not thread-safe
  • Do not pass pointers/references to this object over thread boundaries
Note
thread-safety
  • The object itself may be passed over thread boundary

Definition at line 54 of file managedMemory.h.

Constructor & Destructor Documentation

template<class T, int dim = 1>
rambrain::managedPtr< T, dim >::managedPtr ( const managedPtr< T, dim > &  ref)
inline

copy ctor

Definition at line 85 of file managedPtr.h.

template<class T, int dim = 1>
template<typename... ctor_args>
rambrain::managedPtr< T, dim >::managedPtr ( unsigned int  n_elem,
ctor_args...  Args 
)
inline

instantiates managedPtr containing n_elem elements in the current dimension and passes Args as arguments to the constructor of these

Definition at line 93 of file managedPtr.h.

template<class T, int dim = 1>
rambrain::managedPtr< T, dim >::managedPtr ( )
inline

with no arguments given, instantiates an array with one element

Definition at line 100 of file managedPtr.h.

template<class T, int dim = 1>
rambrain::managedPtr< T, dim >::~managedPtr ( )
inline

destructor

Definition at line 103 of file managedPtr.h.

Member Function Documentation

template<class T, int dim = 1>
managedPtr<T, dim>& rambrain::managedPtr< T, dim >::operator= ( const managedPtr< T, dim > &  ref)
inline

assignment operator

Definition at line 108 of file managedPtr.h.

template<class T, int dim = 1>
managedPtr< T, dim - 1 >& rambrain::managedPtr< T, dim >::operator[] ( int  i)
inline

simple getter for this dimension

Definition at line 119 of file managedPtr.h.

template<class T, int dim = 1>
const managedPtr< T, dim - 1 >& rambrain::managedPtr< T, dim >::operator[] ( int  i) const
inline

simple getter for this dimension

Definition at line 124 of file managedPtr.h.

Member Data Documentation

template<class T, int dim = 1>
unsigned int rambrain::managedPtr< T, dim >::n_elem
private

Definition at line 129 of file managedPtr.h.

template<class T, int dim = 1>
managedPtr< T, dim - 1 >* rambrain::managedPtr< T, dim >::subPtrs
private

Definition at line 130 of file managedPtr.h.


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