HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
GA_CEAttributeAccessor Class Reference

#include <GA_CEAttribute.h>

Public Member Functions

 GA_CEAttributeAccessor ()=default
 
 GA_CEAttributeAccessor (GA_CEAttributePtr ceattrib, bool read, bool write)
 
 ~GA_CEAttributeAccessor ()
 
 GA_CEAttributeAccessor (const GA_CEAttributeAccessor &)=delete
 
GA_CEAttributeAccessoroperator= (const GA_CEAttributeAccessor &)=delete
 
cl::Buffer bufferR () const
 
cl::Buffer indexBufferR () const
 
cl::Buffer bufferW () const
 
cl::Buffer bufferRW () const
 
cl::Buffer buffer (bool read, bool write) const
 
bool isValid () const
 
bool isInvalid () const
 
GA_Size entries () const
 
int tupleSize () const
 
GA_StorageClass storage () const
 
GA_Precision precision () const
 
bool isArray () const
 

Protected Attributes

GA_CEAttributePtr myCEAttrib
 
bool myRead = false
 
bool myWrite = false
 
cl::Buffer myBuffer
 
cl::Buffer myIndexBuffer
 

Detailed Description

Definition at line 369 of file GA_CEAttribute.h.

Constructor & Destructor Documentation

GA_CEAttributeAccessor::GA_CEAttributeAccessor ( )
default
GA_CEAttributeAccessor::GA_CEAttributeAccessor ( GA_CEAttributePtr  ceattrib,
bool  read,
bool  write 
)
GA_CEAttributeAccessor::~GA_CEAttributeAccessor ( )
GA_CEAttributeAccessor::GA_CEAttributeAccessor ( const GA_CEAttributeAccessor )
delete

These should exist, along with move constructors, but do require work to ensure the gpuinuse flag is handled.

Member Function Documentation

cl::Buffer GA_CEAttributeAccessor::buffer ( bool  read,
bool  write 
) const
cl::Buffer GA_CEAttributeAccessor::bufferR ( ) const
inline

Definition at line 381 of file GA_CEAttribute.h.

cl::Buffer GA_CEAttributeAccessor::bufferRW ( ) const
inline

Definition at line 384 of file GA_CEAttribute.h.

cl::Buffer GA_CEAttributeAccessor::bufferW ( ) const
inline

Definition at line 383 of file GA_CEAttribute.h.

GA_Size GA_CEAttributeAccessor::entries ( ) const
inline

Definition at line 395 of file GA_CEAttribute.h.

cl::Buffer GA_CEAttributeAccessor::indexBufferR ( ) const
inline

Definition at line 382 of file GA_CEAttribute.h.

bool GA_CEAttributeAccessor::isArray ( ) const
inline

Definition at line 399 of file GA_CEAttribute.h.

bool GA_CEAttributeAccessor::isInvalid ( ) const
inline

Definition at line 393 of file GA_CEAttribute.h.

bool GA_CEAttributeAccessor::isValid ( ) const
inline

Definition at line 387 of file GA_CEAttribute.h.

GA_CEAttributeAccessor& GA_CEAttributeAccessor::operator= ( const GA_CEAttributeAccessor )
delete
GA_Precision GA_CEAttributeAccessor::precision ( ) const
inline

Definition at line 398 of file GA_CEAttribute.h.

GA_StorageClass GA_CEAttributeAccessor::storage ( ) const
inline

Definition at line 397 of file GA_CEAttribute.h.

int GA_CEAttributeAccessor::tupleSize ( ) const
inline

Definition at line 396 of file GA_CEAttribute.h.

Member Data Documentation

cl::Buffer GA_CEAttributeAccessor::myBuffer
protected

We explcitly extend the cl::Buffer lifetimes as this must be done until the kernel is executed, so this allows one to only extend one thing.

Definition at line 415 of file GA_CEAttribute.h.

GA_CEAttributePtr GA_CEAttributeAccessor::myCEAttrib
protected

We extend lifetime of our attribute that we have our in-use flag for.

Definition at line 404 of file GA_CEAttribute.h.

cl::Buffer GA_CEAttributeAccessor::myIndexBuffer
protected

Definition at line 415 of file GA_CEAttribute.h.

bool GA_CEAttributeAccessor::myRead = false
protected

Whether we have been acquired for read or write, this is used to allow run-time validation of our requirments.

Definition at line 409 of file GA_CEAttribute.h.

bool GA_CEAttributeAccessor::myWrite = false
protected

Definition at line 410 of file GA_CEAttribute.h.


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