OWL
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Public Attributes | List of all members
owl::APIContext Struct Reference
Inheritance diagram for owl::APIContext:
owl::Context owl::Object

Public Types

typedef std::shared_ptr< APIContextSP
 
- Public Types inherited from owl::Context
typedef std::shared_ptr< ContextSP
 
- Public Types inherited from owl::Object
typedef std::shared_ptr< ObjectSP
 

Public Member Functions

 APIContext (int32_t *requestedDeviceIDs, int numRequestedDevices)
 
virtual std::string toString () const override
 
APIHandlecreateHandle (Object::SP object)
 
void track (APIHandle *object)
 
void forget (APIHandle *object)
 
void releaseAll ()
 
- Public Member Functions inherited from owl::Context
virtual std::string toString () const override
 
 Context (int32_t *requestedDeviceIDs, int numRequestedDevices)
 
virtual ~Context ()
 
size_t deviceCount () const
 
const std::vector< DeviceContext::SP > & getDevices () const
 
DeviceContext::SP getDevice (int ID) const
 
void buildHitGroupRecordsOn (const DeviceContext::SP &device)
 
void buildRayGenRecordsOn (const DeviceContext::SP &device)
 
void buildMissProgRecordsOn (const DeviceContext::SP &device)
 
void setRayTypeCount (size_t rayTypeCount)
 
void setBoundLaunchParamValues (const std::vector< OWLBoundValueDecl > &boundValues)
 
void enableMotionBlur ()
 
void enableCurves ()
 
void enableSpheres ()
 
void disablePerGeometrySBTRecords ()
 
void setMaxInstancingDepth (int32_t maxInstanceDepth)
 
void setNumAttributeValues (size_t numAttributeValues)
 
void setNumPayloadValues (size_t numPayloadValues)
 
void buildSBT (OWLBuildSBTFlags flags)
 
void buildPipeline ()
 
void buildPrograms (bool debug=false)
 
void destroyPrograms ()
 
void buildModules (bool debug=false)
 
void destroyModules ()
 
Texture::SP texture2DCreate (OWLTexelFormat texelFormat, OWLTextureFilterMode filterMode, OWLTextureAddressMode addressMode, OWLTextureColorSpace colorSpace, const vec2i size, uint32_t linePitchInBytes, const void *texels)
 
GeomGroup::SP trianglesGeomGroupCreate (size_t numChildren, unsigned int buildFlags)
 
GeomGroup::SP curvesGeomGroupCreate (size_t numChildren, unsigned int buildFlags)
 
GeomGroup::SP userGeomGroupCreate (size_t numChildren, unsigned int buildFlags)
 
GeomGroup::SP sphereGeomGroupCreate (size_t numChildren, unsigned int buildFlags)
 
Buffer::SP deviceBufferCreate (OWLDataType type, size_t count, const void *init)
 
Buffer::SP hostPinnedBufferCreate (OWLDataType type, size_t count)
 
Buffer::SP managedMemoryBufferCreate (OWLDataType type, size_t count, const void *init)
 
Buffer::SP graphicsBufferCreate (OWLDataType type, size_t count, cudaGraphicsResource_t resource)
 
RayGenType::SP createRayGenType (Module::SP module, const std::string &progName, size_t varStructSize, const std::vector< OWLVarDecl > &varDecls)
 
RayGen::SP createRayGen (const std::shared_ptr< RayGenType > &type)
 
LaunchParamsType::SP createLaunchParamsType (size_t varStructSize, const std::vector< OWLVarDecl > &varDecls)
 
LaunchParams::SP createLaunchParams (const std::shared_ptr< LaunchParamsType > &type)
 
MissProgType::SP createMissProgType (Module::SP module, const std::string &progName, size_t varStructSize, const std::vector< OWLVarDecl > &varDecls)
 
MissProg::SP createMissProg (const std::shared_ptr< MissProgType > &type)
 
void setMissProg (int rayTypeToSet, MissProg::SP missProgToUse)
 
GeomType::SP createGeomType (OWLGeomKind kind, size_t varStructSize, const std::vector< OWLVarDecl > &varDecls)
 
Module::SP createModule (const std::string &ptxCode)
 
Module::SP createModule (const std::vector< uint8_t > &IR)
 
- 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

std::set< APIHandle * > activeHandles
 
std::mutex monitor
 
- Public Attributes inherited from owl::Context
RangeAllocator sbtRangeAllocator
 
std::vector< MissProg::SP > missProgPerRayType
 
int maxInstancingDepth = 1
 
bool perGeometrySBTRecordsDisabled = false
 
int numRayTypes { 1 }
 
bool motionBlurEnabled = false
 
bool curvesEnabled = false
 
bool spheresEnabled = false
 
int numAttributeValues = 2
 
int numPayloadValues = 2
 
LaunchParams::SP dummyLaunchParams
 
ObjectRegistryT< Bufferbuffers
 
ObjectRegistryT< Texturetextures
 
ObjectRegistryT< Groupgroups
 
ObjectRegistryT< RayGenTyperayGenTypes
 
ObjectRegistryT< RayGenrayGens
 
ObjectRegistryT< MissProgTypemissProgTypes
 
ObjectRegistryT< MissProgmissProgs
 
ObjectRegistryT< GeomTypegeomTypes
 
ObjectRegistryT< Geomgeoms
 
ObjectRegistryT< Modulemodules
 
ObjectRegistryT< LaunchParamsTypelaunchParamTypes
 
ObjectRegistryT< LaunchParamslaunchParams
 
- Public Attributes inherited from owl::Object
const size_t uniqueID
 
std::vector< DeviceData::SP > deviceData
 

Additional Inherited Members

- Static Public Member Functions inherited from owl::Context
static bool logging ()
 
- Static Public Attributes inherited from owl::Object
static std::atomic< uint64_t > nextAvailableID
 

Member Function Documentation

◆ releaseAll()

void owl::APIContext::releaseAll ( )

delete - and thereby, release - all handles that we still own.

◆ toString()

virtual std::string owl::APIContext::toString ( ) const
inlineoverridevirtual

pretty-printer, for printf-debugging

Reimplemented from owl::Context.


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