#include <DeviceContext.h>
|  | 
| std::vector< OptixProgramGroup > | allActivePrograms | 
|  | 
| OptixDeviceContext | optixContext = nullptr | 
|  | 
| CUcontext | cudaContext = nullptr | 
|  | 
| CUstream | stream = nullptr | 
|  | 
| OptixPipelineCompileOptions | pipelineCompileOptions = {} | 
|  | 
| OptixPipelineLinkOptions | pipelineLinkOptions = {} | 
|  | 
| OptixModuleCompileOptions | moduleCompileOptions = {} | 
|  | 
| OptixPipeline | pipeline = nullptr | 
|  | 
| SBT | sbt = {} | 
|  | 
| OptixModule | curvesModule [2][3] | 
|  | 
| OptixModule | spheresModule = nullptr | 
|  | 
| Context *const | parent | 
|  | 
| const int | ID | 
|  | 
| const int | cudaDeviceID | 
|  | 
optix and cuda context for a single, specific GPU 
◆ DeviceContext()
      
        
          | owl::DeviceContext::DeviceContext | ( | Context * | parent, | 
        
          |  |  | int | owlID, | 
        
          |  |  | int | cudaID | 
        
          |  | ) |  |  | 
      
 
create a new device context with given context object, using given GPU "cudaID", and serving the rols at the "owlID"th GPU in that context 
 
 
◆ buildMissPrograms()
      
        
          | void owl::DeviceContext::buildMissPrograms | ( |  | ) |  | 
      
 
build all optix progrmas for miss program types 
 
 
◆ configurePipelineOptions()
      
        
          | void owl::DeviceContext::configurePipelineOptions | ( | bool | debug = false | ) |  | 
      
 
configures the optixPipeline link options and compile options, based on what values (motion blur on/off, multi-level instnacing, etc) are set in the context 
 
 
◆ getCudaDeviceID()
      
        
          | int owl::DeviceContext::getCudaDeviceID | ( |  | ) | const | 
      
 
helper function - return cuda device ID of this device 
 
 
◆ getDeviceName()
      
        
          | std::string owl::DeviceContext::getDeviceName | ( |  | ) | const | 
      
 
helper function - return cuda name of this device
return CUDA's name string for given device 
 
 
◆ getStream()
  
  | 
        
          | CUstream owl::DeviceContext::getStream | ( |  | ) | const |  | inline | 
 
return the optix default stream for this device. launch params may use their own stream 
 
 
◆ allActivePrograms
      
        
          | std::vector<OptixProgramGroup> owl::DeviceContext::allActivePrograms | 
      
 
collects all compiled programs during 'buildPrograms', such that all active progs can then be passed to optix durign pipeline creation 
 
 
◆ curvesModule
      
        
          | OptixModule owl::DeviceContext::curvesModule[2][3] | 
      
 
Initial value:= {
       { nullptr, nullptr, nullptr },
       { nullptr, nullptr, nullptr }
    }
optix builtin modules for curves of degree 1, 2, and 3; only get loaded once the user calls owlEnableCurves() 
 
 
◆ ID
      
        
          | const int owl::DeviceContext::ID | 
      
 
linear ID (0,1,2,...) of how we number devices (i.e., 'first' device is always device 0, no matter if it runs on another physical/cuda device) 
 
 
◆ parent
      
        
          | Context* const owl::DeviceContext::parent | 
      
 
the owl context that this device is in 
 
 
◆ spheresModule
      
        
          | OptixModule owl::DeviceContext::spheresModule = nullptr | 
      
 
optix builtin module for spheres 
 
 
The documentation for this struct was generated from the following files: