OWL
Loading...
Searching...
No Matches
Classes | Public Types | Public Member Functions | List of all members
owl::LaunchParams Struct Reference

#include <LaunchParams.h>

Inheritance diagram for owl::LaunchParams:
owl::SBTObject< LaunchParamsType > owl::SBTObjectBase owl::RegisteredObject owl::ContextObject owl::Object

Classes

struct  DeviceData
 

Public Types

typedef std::shared_ptr< LaunchParamsSP
 
- Public Types inherited from owl::SBTObject< LaunchParamsType >
typedef std::shared_ptr< SBTObjectSP
 
- Public Types inherited from owl::ContextObject
typedef std::shared_ptr< ContextObjectSP
 
- Public Types inherited from owl::Object
typedef std::shared_ptr< ObjectSP
 

Public Member Functions

 LaunchParams (Context *const context, LaunchParamsType::SP type)
 
std::string toString () const override
 
CUstream getCudaStream (const DeviceContext::SP &device)
 
RegisteredObject::DeviceData::SP createOn (const DeviceContext::SP &device) override
 
DeviceDatagetDD (const DeviceContext::SP &device) const
 
void sync ()
 
- Public Member Functions inherited from owl::SBTObject< LaunchParamsType >
 SBTObject (Context *const context, ObjectRegistry &registry, std::shared_ptr< LaunchParamsType > type)
 
virtual std::string toString () const
 
- Public Member Functions inherited from owl::SBTObjectBase
 SBTObjectBase (Context *const context, ObjectRegistry &registry, 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 &registry)
 
- 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 ()
 

Additional Inherited Members

- Public Attributes inherited from owl::SBTObject< LaunchParamsType >
std::shared_ptr< LaunchParamsType > 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
 
ObjectRegistryregistry
 
- Public Attributes inherited from owl::ContextObject
Context *const context
 
- Public Attributes inherited from owl::Object
const size_t uniqueID
 
std::vector< DeviceData::SP > deviceData
 
- Static Public Attributes inherited from owl::Object
static std::atomic< uint64_t > nextAvailableID
 

Detailed Description

an object that stores the variables used for building the launch params data - this is all this object does: store values and write them when requested

Constructor & Destructor Documentation

◆ LaunchParams()

owl::LaunchParams::LaunchParams ( Context *const  context,
LaunchParamsType::SP  type 
)

create a new instenace of given launch param type

Member Function Documentation

◆ createOn()

RegisteredObject::DeviceData::SP owl::LaunchParams::createOn ( const DeviceContext::SP &  device)
override

creates the device-specific data for this group

◆ getCudaStream()

CUstream owl::LaunchParams::getCudaStream ( const DeviceContext::SP &  device)

returns the cuda stream associated with this launch params object (for given device, since each device has a different one. Note this stream is different from the default optix context stream to allow asynchronous use of launhc params - ie, each set of launchparams has its oww stream and can thus be used/launched independently of other launchparam-based launches

◆ getDD()

LaunchParams::DeviceData & owl::LaunchParams::getDD ( const DeviceContext::SP &  device) const
inline

get reference to given device-specific data for this object

◆ sync()

void owl::LaunchParams::sync ( )

wait for the latest launch done with these launch params to complete, by syncing on the stream associated with these params

◆ toString()

std::string owl::LaunchParams::toString ( ) const
overridevirtual

create a new instenace of given launch param type

pretty-printer, for printf-debugging

pretty-printer, for printf-debugging

Reimplemented from owl::SBTObject< LaunchParamsType >.


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