RayZaler 0.1
The free opto-mechanical simulation framework
RZ::CPURayTracingEngine Class Reference
Inheritance diagram for RZ::CPURayTracingEngine:
Collaboration diagram for RZ::CPURayTracingEngine:

Protected Member Functions

virtual void cast (const OpticalSurface *, RayBeam *) override
 
virtual void transmit (const OpticalSurface *, RayBeam *) override
 
- Protected Member Functions inherited from RZ::RayTracingEngine
virtual void cast (const OpticalSurface *, RayBeam *)=0
 
virtual void transmit (const OpticalSurface *, RayBeam *)=0
 
void rayProgress (uint64_t num, uint64_t total)
 

Additional Inherited Members

- Public Member Functions inherited from RZ::RayTracingEngine
RayBeambeam () const
 
void setCurrentStage (std::string const &name, size_t current, size_t num)
 
virtual RayBeammakeBeam (bool nonSeq=false)
 
RayBeamensureMainBeam ()
 
RayTracingProcessListenerlistener () const
 
void setListener (RayTracingProcessListener *)
 
void clear ()
 
void setMainBeam (RayBeam *)
 
void pushRay (Point3 const &origin, Vec3 const &direction, Real length=0, uint32_t id=0)
 
void pushRays (std::list< Ray > const &)
 
void castTo (const OpticalSurface *, RayBeam *beam=nullptr)
 
void updateOrigins ()
 
void transmitThrough (const OpticalSurface *surface)
 
void transmitThroughIntercepted ()
 
std::list< Ray > const & getRays (bool keepPruned=false)
 
void tick ()
 
void setStartTime (struct timeval const &tv)
 
struct timeval lastTick () const
 
uint64_t tack () const
 
bool notificationPending () const
 
void clearPendingNotifications ()
 
bool cancelled () const
 
void stageProgress (RayTracingStageProgressType, std::string const &, unsigned int num, unsigned int total)
 

Member Function Documentation

◆ cast()

void CPURayTracingEngine::cast ( const OpticalSurface surface,
RayBeam beam 
)
overrideprotectedvirtual

Implements RZ::RayTracingEngine.

◆ transmit()

void CPURayTracingEngine::transmit ( const OpticalSurface surface,
RayBeam beam 
)
overrideprotectedvirtual

Implements RZ::RayTracingEngine.


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