OWL
OptiX7 Wrapper Library
owl::UserTypeVariable Struct Reference
Inheritance diagram for owl::UserTypeVariable:
owl::Variable owl::Object

Public Member Functions

 UserTypeVariable (const OWLVarDecl *const varDecl)
 
void setRaw (const void *ptr) override
 
void writeToSBT (uint8_t *sbtEntry, const DeviceContext::SP &device) const override
 
- Public Member Functions inherited from owl::Variable
 Variable (const OWLVarDecl *const varDecl)
 
virtual void set (const std::shared_ptr< Buffer > &value)
 
virtual void set (const std::shared_ptr< Group > &value)
 
virtual void set (const std::shared_ptr< Texture > &value)
 
virtual void set (const int32_t &value)
 
virtual void set (const vec2i &value)
 
virtual void set (const vec3i &value)
 
virtual void set (const vec4i &value)
 
virtual void set (const uint32_t &value)
 
virtual void set (const vec2ui &value)
 
virtual void set (const vec3ui &value)
 
virtual void set (const vec4ui &value)
 
virtual void set (const int64_t &value)
 
virtual void set (const vec2l &value)
 
virtual void set (const vec3l &value)
 
virtual void set (const vec4l &value)
 
virtual void set (const uint64_t &value)
 
virtual void set (const vec2ul &value)
 
virtual void set (const vec3ul &value)
 
virtual void set (const vec4ul &value)
 
virtual void set (const float &value)
 
virtual void set (const vec2f &value)
 
virtual void set (const vec3f &value)
 
virtual void set (const vec4f &value)
 
virtual void set (const double &value)
 
virtual void set (const vec2d &value)
 
virtual void set (const vec3d &value)
 
virtual void set (const vec4d &value)
 
virtual std::string toString () const
 
void mismatchingType ()
 
- Public Member Functions inherited from owl::Object
 Object ()
 
virtual DeviceData::SP createOn (const std::shared_ptr< DeviceContext > &device)
 
void createDeviceData (const std::vector< std::shared_ptr< DeviceContext >> &devices)
 
template<typename T >
std::shared_ptr< T > as ()
 

Public Attributes

std::vector< uint8_t > data
 
- Public Attributes inherited from owl::Variable
const OWLVarDecl *const varDecl
 
- Public Attributes inherited from owl::Object
const size_t uniqueID
 
std::vector< DeviceData::SPdeviceData
 

Additional Inherited Members

- Public Types inherited from owl::Variable
typedef std::shared_ptr< VariableSP
 
- Public Types inherited from owl::Object
typedef std::shared_ptr< ObjectSP
 
- Static Public Member Functions inherited from owl::Variable
static Variable::SP createInstanceOf (const OWLVarDecl *decl)
 
- Static Public Attributes inherited from owl::Object
static std::atomic< uint64_t > nextAvailableID
 

Detailed Description

Variable type for ray "user yypes". User types have a user-specified size in bytes, and get set by passing a pointer to 'raw' data that then gets copied in binary form

Constructor & Destructor Documentation

◆ UserTypeVariable()

owl::UserTypeVariable::UserTypeVariable ( const OWLVarDecl *const  varDecl)
inline

Member Function Documentation

◆ setRaw()

void owl::UserTypeVariable::setRaw ( const void *  ptr)
inlineoverridevirtual

Reimplemented from owl::Variable.

◆ writeToSBT()

void owl::UserTypeVariable::writeToSBT ( uint8_t *  sbtEntry,
const DeviceContext::SP device 
) const
inlineoverridevirtual

writes the device specific representation of the given type

Implements owl::Variable.

Member Data Documentation

◆ data

std::vector<uint8_t> owl::UserTypeVariable::data

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