|
blitz Version 1.0.2
|
#include <memblock.h>


Public Types | |
| typedef P_type | T_type |
Protected Member Functions | |
| MemoryBlock (sizeType items) | |
| MemoryBlock (sizeType length, T_type *data) | |
| Constructor for a preallocated block that should be deleted when we are done? | |
| virtual | ~MemoryBlock () |
| bool | doLock (bool lockingPolicy) |
| void | addReference () |
| T_type *restrict | data () |
| const T_type *restrict | data () const |
| T_type *& | dataBlockAddress () |
| sizeType | length () const |
| int | removeReference () |
| int | references () const |
| void | allocate (sizeType length) |
| void | deallocate () |
Private Member Functions | |
| MemoryBlock (const MemoryBlock< T_type > &) | |
| void | operator= (const MemoryBlock< T_type > &) |
| MemoryBlock () | |
| The default constructor is needed for serialization. | |
Private Attributes | ||
| bool | allocatedByUs_ | |
| Keeps track of whether the block was preallocated or not. | ||
| union { | ||
| T_type *restrict data_ | ||
| simdTypes< T_type >::vecType *restrict data_tv_ | ||
| char *restrict data_char_ | ||
| }; | ||
| union { | ||
| T_type * dataBlockAddress_ | ||
| simdTypes< T_type >::vecType *restrict dBA_tv_ | ||
| char * dBA_char_ | ||
| }; | ||
| sizeType | length_ | |
Friends | |
| class | MemoryBlockReference< P_type > |
| typedef P_type blitz::MemoryBlock< P_type >::T_type |
|
inlineexplicitprotected |
References allocate(), BZ_MUTEX_INIT, dataBlockAddress_, length_, and blitz::simdTypes< T >::vecWidth.
Referenced by MemoryBlock(), and operator=().
|
inlineprotected |
Constructor for a preallocated block that should be deleted when we are done?
References allocatedByUs_, BZ_MUTEX_INIT, data(), data_, dataBlockAddress_, length(), and length_.
|
inlineprotectedvirtual |
|
inlineprivate |
References MemoryBlock().
|
inlineprivate |
The default constructor is needed for serialization.
|
inlineprotected |
References BZ_MUTEX_LOCK, BZ_MUTEX_UNLOCK, dataBlockAddress_, and length_.
|
inlineprotected |
References length().
Referenced by MemoryBlock().
|
inlineprotected |
References data_, and restrict.
Referenced by MemoryBlock().
|
inlineprotected |
|
inlineprotected |
References dataBlockAddress_.
|
protected |
|
inlineprotected |
|
inlineprotected |
References length_.
Referenced by allocate(), and MemoryBlock().
|
inlineprivate |
References MemoryBlock().
|
inlineprotected |
References BZ_MUTEX_LOCK, and BZ_MUTEX_UNLOCK.
|
inlineprotected |
References BZ_MUTEX_LOCK, BZ_MUTEX_UNLOCK, dataBlockAddress_, and length_.
|
friend |
| union { ... } blitz::MemoryBlock< P_type > |
| union { ... } blitz::MemoryBlock< P_type > |
|
private |
Keeps track of whether the block was preallocated or not.
This affects potential alignment so must be taken into account when we delete.
Referenced by MemoryBlock().
| T_type* restrict blitz::MemoryBlock< P_type >::data_ |
Referenced by data(), data(), and MemoryBlock().
| char* restrict blitz::MemoryBlock< P_type >::data_char_ |
| simdTypes<T_type>::vecType* restrict blitz::MemoryBlock< P_type >::data_tv_ |
| T_type* blitz::MemoryBlock< P_type >::dataBlockAddress_ |
Referenced by addReference(), dataBlockAddress(), MemoryBlock(), MemoryBlock(), and removeReference().
| char* blitz::MemoryBlock< P_type >::dBA_char_ |
| simdTypes<T_type>::vecType* restrict blitz::MemoryBlock< P_type >::dBA_tv_ |
|
private |
Referenced by addReference(), length(), MemoryBlock(), MemoryBlock(), and removeReference().