XGC1
Public Member Functions | Private Member Functions | Private Attributes | List of all members
LoadableBuffer< T, Device > Class Template Reference

#include <loadable_buffer.hpp>

Collaboration diagram for LoadableBuffer< T, Device >:
Collaboration graph
[legend]

Public Member Functions

 LoadableBuffer (int size)
 
template<class... Vs>
 LoadableBuffer (Vs... views)
 
template<class V >
void load (V view, bool do_copy)
 
template<class V >
void unload (V view, bool do_copy)
 
int size ()
 
T * data ()
 

Private Member Functions

template<class V >
int size_sum (V first)
 
template<class V , class... TRest>
int size_sum (V first, TRest... args)
 

Private Attributes

View< T *, CLayout, Device > buffer
 The buffer allocation. More...
 
int offset
 Tracks where the most recently loaded View ended in the buffer. More...
 

Constructor & Destructor Documentation

◆ LoadableBuffer() [1/2]

template<typename T , class Device >
LoadableBuffer< T, Device >::LoadableBuffer ( int  size)
inline

◆ LoadableBuffer() [2/2]

template<typename T , class Device >
template<class... Vs>
LoadableBuffer< T, Device >::LoadableBuffer ( Vs...  views)
inline

Member Function Documentation

◆ data()

template<typename T , class Device >
T* LoadableBuffer< T, Device >::data ( )
inline
Here is the caller graph for this function:

◆ load()

template<typename T , class Device >
template<class V >
void LoadableBuffer< T, Device >::load ( view,
bool  do_copy 
)
inline
Here is the caller graph for this function:

◆ size()

template<typename T , class Device >
int LoadableBuffer< T, Device >::size ( )
inline

◆ size_sum() [1/2]

template<typename T , class Device >
template<class V >
int LoadableBuffer< T, Device >::size_sum ( first)
inlineprivate
Here is the caller graph for this function:

◆ size_sum() [2/2]

template<typename T , class Device >
template<class V , class... TRest>
int LoadableBuffer< T, Device >::size_sum ( first,
TRest...  args 
)
inlineprivate
Here is the call graph for this function:

◆ unload()

template<typename T , class Device >
template<class V >
void LoadableBuffer< T, Device >::unload ( view,
bool  do_copy 
)
inline
Here is the caller graph for this function:

Member Data Documentation

◆ buffer

template<typename T , class Device >
View<T*, CLayout, Device> LoadableBuffer< T, Device >::buffer
private

The buffer allocation.

◆ offset

template<typename T , class Device >
int LoadableBuffer< T, Device >::offset
private

Tracks where the most recently loaded View ended in the buffer.


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