| 
    OWL
    
   | 
 
#include <UserGeom.h>
  
Classes | |
| struct | DeviceData | 
Public Types | |
| typedef std::shared_ptr< UserGeom > | SP | 
  Public Types inherited from owl::Geom | |
| typedef std::shared_ptr< Geom > | SP | 
  Public Types inherited from owl::SBTObject< GeomType > | |
| typedef std::shared_ptr< SBTObject > | SP | 
  Public Types inherited from owl::ContextObject | |
| typedef std::shared_ptr< ContextObject > | SP | 
  Public Types inherited from owl::Object | |
| typedef std::shared_ptr< Object > | SP | 
Public Member Functions | |
| UserGeom (Context *const context, GeomType::SP geometryType) | |
| RegisteredObject::DeviceData::SP | createOn (const DeviceContext::SP &device) override | 
| DeviceData & | getDD (const DeviceContext::SP &device) | 
| UserGeomType::DeviceData & | getTypeDD (const DeviceContext::SP &device) const | 
| std::string | toString () const override | 
| void | setPrimCount (size_t count) | 
| void | setBoundsBuffer (Buffer::SP buffer) | 
| void | setMotionBoundsBuffers (Buffer::SP buffer1, Buffer::SP buffer2) | 
| void | executeBoundsProgOnPrimitives (const DeviceContext::SP &device) | 
| void | executeMotionBoundsProgOnPrimitives (const DeviceContext::SP &device) | 
  Public Member Functions inherited from owl::Geom | |
| Geom (Context *const context, GeomType::SP geomType) | |
| std::string | toString () const override | 
| void | writeSBTRecord (uint8_t *const sbtRecord, const DeviceContext::SP &device, int rayTypeID) | 
  Public Member Functions inherited from owl::SBTObject< GeomType > | |
| SBTObject (Context *const context, ObjectRegistry ®istry, std::shared_ptr< GeomType > type) | |
| virtual std::string | toString () const | 
  Public Member Functions inherited from owl::SBTObjectBase | |
| SBTObjectBase (Context *const context, ObjectRegistry ®istry, std::shared_ptr< SBTObjectType > type) | |
| bool | hasVariable (const std::string &name) | 
| Variable::SP | getVariable (const std::string &name) | 
| void | writeVariables (uint8_t *sbtEntry, const DeviceContext::SP &device) const | 
  Public Member Functions inherited from owl::RegisteredObject | |
| RegisteredObject (Context *const context, ObjectRegistry ®istry) | |
  Public Member Functions inherited from owl::ContextObject | |
| ContextObject (Context *const context) | |
| std::string | toString () const override | 
  Public Member Functions inherited from owl::Object | |
| Object () | |
| virtual std::string | toString () const | 
| 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 | |
| size_t | primCount = 0 | 
  Public Attributes inherited from owl::Geom | |
| GeomType::SP | geomType | 
  Public Attributes inherited from owl::SBTObject< GeomType > | |
| std::shared_ptr< GeomType > const | type | 
  Public Attributes inherited from owl::SBTObjectBase | |
| std::shared_ptr< SBTObjectType > const | type | 
| const std::vector< Variable::SP > | variables | 
  Public Attributes inherited from owl::RegisteredObject | |
| int | ID | 
| ObjectRegistry & | registry | 
  Public Attributes inherited from owl::ContextObject | |
| Context *const | context | 
  Public Attributes inherited from owl::Object | |
| const size_t | uniqueID | 
| std::vector< DeviceData::SP > | deviceData | 
Additional Inherited Members | |
  Static Public Attributes inherited from owl::Object | |
| static std::atomic< uint64_t > | nextAvailableID | 
instance of a user geometry - this describes a type of geometry whose bounds and isec programs are speciffied through its associated type, and whose values are stores in this object's variables
| owl::UserGeom::UserGeom | ( | Context *const | context, | 
| GeomType::SP | geometryType | ||
| ) | 
constructor
      
  | 
  override | 
creates the device-specific data for this group
| void owl::UserGeom::executeBoundsProgOnPrimitives | ( | const DeviceContext::SP & | device | ) | 
run the bounding box program for all primitives within this geometry
| void owl::UserGeom::executeMotionBoundsProgOnPrimitives | ( | const DeviceContext::SP & | device | ) | 
run the motion bounding box program for all primitives within this geometry
      
  | 
  inline | 
get reference to given device-specific data for this object
      
  | 
  inline | 
get reference to the device-specific data for this object's type descriptor
| void owl::UserGeom::setBoundsBuffer | ( | Buffer::SP | buffer | ) | 
Allow the user to allocate their own buffer for storing AABBs
| void owl::UserGeom::setMotionBoundsBuffers | ( | Buffer::SP | buffer1, | 
| Buffer::SP | buffer2 | ||
| ) | 
Allow the user to allocate their own buffer for storing motion AABBs
| void owl::UserGeom::setPrimCount | ( | size_t | count | ) | 
set number of primitives that this geom will contain
      
  | 
  overridevirtual | 
pretty-printer, for printf-debugging
Reimplemented from owl::Geom.
| size_t owl::UserGeom::primCount = 0 | 
number of prims that this geom will contain