![]()  | 
  
    SLProject
    4.2.000
    
   A platform independent 3D computer graphics framework for desktop OS,  Android,  iOS and online in web browsers 
   | 
 
| ►NApp | The App namespace declares the App::Config struct and the App::run function | 
| ►Nsm | Collection of classes for a state machine implementation used in the Erleb-AR app | 
| ►NUtils | Utils provides utilities for string & file handling, logging and math functions | 
| ►NWAI | WAI : Where Am I: Collection of duplicate structs for vectors | 
| CAppCommon | Top level class for the major global instances off an SLProject app | 
| CAppDelegate | |
| CAppDemoGui | ImGui UI class for the UI of the demo applications | 
| CAppDemoScene2Dand3DText | Class for 2D and 3D text scene | 
| CAppDemoSceneAnimNode | Class for node animation test scene | 
| CAppDemoSceneAnimNodeMass | Class for mass animation test scene | 
| CAppDemoSceneAnimNodeMass2 | Class for benchmark mass animation test scene | 
| CAppDemoSceneAnimSkinned | Class for skinned animation test scene | 
| CAppDemoSceneAnimSkinnedMass | Class for skinned animation test scene | 
| CAppDemoSceneAnimSkinnedMass2 | Class for skinned animation test scene | 
| CAppDemoSceneEmpty | |
| CAppDemoSceneErlebARAugustaTmpTht | Class for ErlebAR model for Augusta Raurica Tempel & Theater | 
| CAppDemoSceneErlebARAventicumAmphitheater | Class for ErlebAR model for Aventicum Amphitheater | 
| CAppDemoSceneErlebARAventicumCigognier | Class for ErlebAR model for Aventicum Cigognier | 
| CAppDemoSceneErlebARAventicumTheater | Class for ErlebAR model for Aventicum Theater | 
| CAppDemoSceneErlebARBernChristoffel | Class for ErlebAR model Christoffel Tower in Bern | 
| CAppDemoSceneErlebARBielBFH | Class for ErlebAR model in Biel at BFH | 
| CAppDemoSceneErlebARBielCBB | Class for ErlebAR model in Biel Campus Biel-Bienne (CBB) | 
| CAppDemoSceneErlebARSutz | Class for ErlebAR model in Sutz | 
| CAppDemoSceneFigure | Class for the figure scene | 
| CAppDemoSceneFrustum | Class for frustum culling test scene | 
| CAppDemoSceneGLTF | Class for GLTF file loading demo scene | 
| CAppDemoSceneJansUniverse | Class for the benchmark scene for Jans Universe | 
| CAppDemoSceneLargeModel | Class for large model scene | 
| CAppDemoSceneLevelOfDetail | Class for level of detail test scene | 
| CAppDemoSceneLotsOfNodes | Class for scene with lots of nodes | 
| CAppDemoSceneMeshLoad | Class for mesh loading demo scene | 
| CAppDemoSceneMinimal | Class for minimal scene | 
| CAppDemoSceneParticleComplexFire | Class for fire ring particle system scene | 
| CAppDemoSceneParticleDustStorm | Class for simple particle system scene | 
| CAppDemoSceneParticleFountain | Class for simple particle system scene | 
| CAppDemoSceneParticleMany | Class for benchmark scene with a particle system with many particles | 
| CAppDemoSceneParticleRingOfFire | Class for fire ring particle system scene | 
| CAppDemoSceneParticleSimple | Class for simple particle system scene | 
| CAppDemoSceneParticleSun | Class for sun particle system scene | 
| CAppDemoScenePointClouds | Class for point cloud test scene | 
| CAppDemoSceneRevolver | Class for revolver mesh scene | 
| CAppDemoSceneRobot | Class for a robot arm test scene | 
| CAppDemoSceneRTDoF | Class for the depth of field ray tracing scene | 
| CAppDemoSceneRTLens | Class for the lens ray tracing scene | 
| CAppDemoSceneRTMuttenzerBox | Class for the Muttenzer Box ray tracing scene | 
| CAppDemoSceneRTSpheres | Class for the ray tracing scene with sphere group | 
| CAppDemoSceneShaderBlinn | Class for demo scene with Blinn-Phong lighting per vertex or per pixel | 
| CAppDemoSceneShaderBump | Class for normal map bump mapping | 
| CAppDemoSceneShaderCook | Class for Cook-Torrance lighting demo scene | 
| CAppDemoSceneShaderEarth | Class for image base lighting demo scene | 
| CAppDemoSceneShaderIBL | Class for image base lighting demo scene | 
| CAppDemoSceneShaderParallax | Class for parallax bump mapping demo scene | 
| CAppDemoSceneShaderSkybox | Class for image base lighting demo scene | 
| CAppDemoSceneShaderWave | Class for per vertex wave shader | 
| CAppDemoSceneShadowBasic | Class for basic shadow mapping demo scene | 
| CAppDemoSceneShadowCascaded | Class for demo scene for cascaded shadow mapping | 
| CAppDemoSceneShadowLightPoint | Class for demo scene for point light shadow mapping | 
| CAppDemoSceneShadowLightSpot | Class for demo scene for spotlight shadow mapping | 
| CAppDemoSceneShadowLightTypes | Class for demo scene with all shadow mapping types | 
| CAppDemoSceneSuzanne | Class for all variants of generated shaders on the Suzanne head | 
| CAppDemoSceneTextureBlend | Class for texture blending scene | 
| CAppDemoSceneTextureCompression | Class for texture compression test scene | 
| CAppDemoSceneTextureFilter | Class for texture filtering scene | 
| CAppDemoSceneVideoSensorAR | Class for devices IMU and GPS Sensors test scene | 
| CAppDemoSceneVideoTexture | Class for live or file video on texture test scene | 
| CAppDemoSceneVideoTrackAruco | Class for ARUCO marker tracking test scene | 
| CAppDemoSceneVideoTrackChessboard | Class for video for chessboard test scene | 
| CAppDemoSceneVideoTrackFace | Class for facial feature tracking test scene | 
| CAppDemoSceneVideoTrackFeatures | Class for feature tracking test scene | 
| CAppDemoSceneVideoTrackMediapipe | Class for Mediapipe hand tracking test scene | 
| CAppDemoSceneVideoTrackWAI | Class for Mediapipe hand tracking test scene | 
| CAppDemoSceneView | |
| CAppDemoSceneVolumeRayCast | Class for test scene for volume rendering of an angiographic MRI scan" | 
| CAppDemoSceneVolumeRayCastLighted | Class for test scene for lighted volume rendering of an angiographic MRI scan" | 
| CAppDemoSceneZFighting | Class for z-fighting test scene | 
| CAppDirectories | |
| CAppMinimalScene | Scene class derived from SLScene | 
| CAppNodeGui | ImGui UI class for the UI of the demo applications | 
| CAppNodeScene | |
| CAppNodeSceneView | |
| CAsyncWorker | AsyncWorker implements a async worker thread | 
| CAveragedQuat4f | |
| CcolorBGR | YUV to RGB image infos. Offset value can be negative for mirrored copy | 
| CCVArucoParams | ArUco Parameters loaded from configuration file | 
| CCVCalibration | Live video camera calibration class with OpenCV an OpenCV calibration | 
| CCVCalibrationEstimator | |
| CCVCalibrationEstimatorException | Special exception that informs about errors during calibration process | 
| CCVCalibrationEstimatorParams | |
| CCVCamera | |
| CCVCapture | Encapsulation of the OpenCV Capture Device and holder of the last frame | 
| CCVFeatureManager | Wrapper class around OpenCV feature detector & describer | 
| CCVImage | OpenCV image class with the same interface as the former SLImage class | 
| CCVImageGeoTiff | Encapsulates a GEOTiff images with geo referenced meta information | 
| CCVRaulMurExtNode | Data structure used to subdivide the Image with key points into segments | 
| CCVRaulMurOrb | Orb detector and descriptor with distribution | 
| CCVTracked | CVTracked is the pure virtual base class for tracking features in video | 
| CCVTrackedAruco | OpenCV ArUco marker tracker class derived from CVTracked | 
| CCVTrackedArucoCube | OpenCV ArUco cube marker tracker class derived from CVTrackedAruco | 
| CCVTrackedChessboard | OpenCV chessboard tracker class derived from CVTracked | 
| CCVTrackedFaces | OpenCV face & facial landmark tracker class derived from CVTracked | 
| ►CCVTrackedFeatures | CVTrackedFeatures is the main part of the AR Christoffelturm scene | 
| CCVTrackedWAI | Tracker that uses the ORB-Slam based WAI library (Where Am I) | 
| CDistortionMeshVertexData | |
| CDistortionRenderDesc | |
| CF2FTransform | |
| CFeatureExtractorFactory | |
| CGlobalTimer | |
| CHighResTimer | High Resolution Timer class using C++11 | 
| ►CHmdRenderInfo | |
| CHttpDownloader | |
| CImGuiEngine | |
| CImGuiRenderer | |
| CImGuiRendererOpenGL | |
| CImGuiWrapper | ImGui Interface class for forwarding all events to the ImGui Handlers | 
| CInstrumentationSession | |
| CInstrumentationTimer | |
| CInstrumentor | Basic instrumentation profiler for Google Chrome tracing format | 
| CLensConfig | |
| ClightDataStd140 | Struct for uniform buffer with std140 layout | 
| CLogWindow | |
| CovrDistortionMesh_ | |
| CovrDistortionVertex_ | |
| CovrFovPort_ | |
| CovrSizef | |
| CovrSizei | |
| CPanScrolling | |
| CProfiler | Utility for profiling functions/scopes and writing the results to a file | 
| CProfileResult | |
| CProfilerTimer | A timer for profiling functions and scopes | 
| CProfilingResult | |
| CScaleAndOffset2D | |
| CSLAABBox | Defines an axis aligned bounding box | 
| CSLAccelStruct | SLAccelStruct is an abstract base class for acceleration structures | 
| CSLAlphaLUTPoint | Alpha point with alpha value and position value between 0-1 | 
| CSlamMapInfos | |
| CSlamVideoInfos | |
| CSLAnimation | SLAnimation is the base container for all animation data | 
| CSLAnimKeyframe | Base class for all animation keyframes | 
| CSLAnimManager | SLAnimManager is the central class for all animation handling | 
| CSLAnimPlayback | Manages the playback of an SLAnimation | 
| CSLAnimSkeleton | SLAnimSkeleton keeps track of a skeletons joints and animations | 
| CSLAnimTrack | Abstract base class for SLAnimationTracks providing time and keyframe functions | 
| CSLArrow | SLArrow is creates an arrow mesh based on its SLRevolver methods | 
| CSLAssetLoader | |
| CSLAssetManager | Toplevel holder of the assets meshes, materials, textures and shaders | 
| CSLAssimpIOStream | |
| CSLAssimpIOSystem | |
| CSLBackground | Defines a 2D-Background for the OpenGL framebuffer background | 
| CSLBox | Axis aligned box mesh | 
| CSLCamera | Active or visible camera node class | 
| CSLCharInputEvent | Specialized SLInput class for unicode character input | 
| CSLCircle | Circle line mesh derived from SLPolyline | 
| CSLColorLUTPoint | Color point with color and position value between 0-1 | 
| CSLCompactGrid | Class for compact uniform grid acceleration structure | 
| CSLCone | SLCone creates a cone mesh based on SLRevolver | 
| CSLCoordAxis | Axis aligned coordinate axis mesh | 
| CSLCoordAxisArrow | Single arrow for coordinate axis | 
| CSLCurve | Base class for curves defined by multiple 3D points | 
| CSLCurveBezier | Implements a Bezier curve interpolation | 
| CSLCylinder | SLCylinder is creates sphere mesh based on its SLRevolver methods | 
| CSLDeviceLocation | Encapsulation of a mobile device location set by the device's GPS sensor | 
| CSLDeviceRotation | Encapsulation of a mobile device rotation set by the device's IMU sensor | 
| CSLDisk | SLDisk creates a disk mesh based on SLRevolver | 
| CSLDrawBits | Drawing states stored in the bits of an unsigned int | 
| CSLEntities | Scenegraph in Data Oriented Design with flat std::vector of SLEntity | 
| CSLEntity | SLEntity is the Data Oriented Design version of a SLNode | 
| CSLEventHandler | Virtual Eventhandler class | 
| CSLFrustum | Matrix to 6 frustum plane conversion functions | 
| CSLGLAttribute | Struct for vertex attribute information | 
| CSLGLDepthBuffer | |
| CSLGLFbo | |
| CSLGLFrameBuffer | |
| CSLGLImGui | ImGui Interface class for forwarding all events to the ImGui Handlers | 
| CSLGLOculus | Wrapper around Oculus Rift Devkit 2 | 
| CSLGLOculusFB | Wrapper around Oculus Rift and its Frame Buffer Objects | 
| CSLGLProgram | Encapsulation of an OpenGL shader program object | 
| CSLGLProgramGenerated | Generated Shader Program class inherited from SLGLProgram | 
| CSLGLProgramGeneric | Generic Shader Program class inherited from SLGLProgram | 
| CSLGLProgramManager | Static container for standard shader programs | 
| CSLGLShader | Encapsulation of an OpenGL shader object | 
| CSLGLState | Singleton class holding all OpenGL states | 
| CSLGLTexture | Texture object for OpenGL texturing | 
| CSLGLTextureIBL | Texture object generated in run time from another texture | 
| CSLGLUniform | Template for a single GLSL uniform variable | 
| CSLGLVertexArray | SLGLVertexArray encapsulates the core OpenGL drawing | 
| CSLGLVertexArrayExt | SLGLVertexArray adds Helper Functions for quick Line & Point Drawing | 
| CSLGLVertexBuffer | SLGLVertexBuffer encapsulates an OpenGL buffer for vertex attributes | 
| CSLGrid | SLGrid creates a rectangular grid with lines with a certain resolution | 
| CSLHorizonNode | |
| CSLImGui | ImGui Interface class for forwarding all events to the original ImGui Handlers | 
| CSLImporter | Interface for 3D file format importer implementations | 
| CSLInputDevice | Interface for input devices that have to be pollsed | 
| CSLInputEvent | Baseclass for all system input events | 
| CSLInputEventInterface | |
| CSLInputManager | SLInputManager. manages system input and custom input devices | 
| CSLIOBuffer | Utility struct that holds a pointer and its length | 
| CSLIOReaderFetch | SLIOStream implementation for downloading files from a web server | 
| CSLIOReaderLocalStorage | SLIOStream implementation for reading from browser local storage | 
| CSLIOReaderMemory | SLIOStream implementation for reading from memory | 
| CSLIOReaderNative | SLIOStream implementation for reading from native files | 
| CSLIOStream | Interface for accessing external data using streams | 
| CSLIOWriterBrowserPopup | SLIOStream implementation to display PNG files in a browser popup | 
| CSLIOWriterLocalStorage | SLIOStream implementation for writing to browser local storage | 
| CSLIOWriterMemory | SLIOStream implementation for reading to memory | 
| CSLIOWriterNative | SLIOStream implementation for writing to native files | 
| CSLJoint | Specialized SLNode that represents a single joint (or bone) in a skeleton | 
| CSLKeyEvent | Specialized SLInput class for all keypress related input events | 
| CSLKeyframeCamera | |
| CSLLens | SLLens creates a lens mesh based on SLRevolver | 
| CSLLight | Abstract Light class for OpenGL light sources | 
| CSLLightDirect | SLLightDirect class for a directional light source | 
| CSLLightRect | Light node class for a rectangular light source | 
| CSLLightSpot | SLLightSpot class for a spot light source | 
| CSLLocation | Class for a named location with lat-lon-Alt WGS84 position | 
| CSLMat3 | 3x3 matrix template class | 
| CSLMat4 | 4x4 matrix template class | 
| CSLMaterial | Defines a standard CG material with textures and a shader program | 
| CSLMaterialDefaultColorAttribute | Global default color attribute material for meshes that have colors per vertex | 
| CSLMaterialDefaultGray | Global default gray color material for meshes that don't define their own | 
| CSLMesh | An SLMesh object is a triangulated mesh, drawn with one draw call | 
| CSLMouseEvent | Specialized SLInput class for all mouse related input events | 
| CSLNode | SLNode represents a node in a hierarchical scene graph | 
| CSLNodeAnimTrack | Specialized animation track for node animations | 
| CSLNodeLOD | Level of detail (LOD) group node based on screen space coverage | 
| CSLNodeStats | Struct for scene graph statistics | 
| CSLObject | Base class for all other classes | 
| CSLParticleSystem | SLParticleSystem creates a particle meshes from a point primitive buffer | 
| CSLPathtracer | Classic Monte Carlo Pathtracing algorithm for real global illumination | 
| CSLPlane | Defines a plane in 3D space with the equation ax + by + cy + d = 0 | 
| CSLPoints | The SLPoints mesh object of witch the vertices are drawn as points | 
| CSLPolygon | SLPolygon creates a convex polyon mesh | 
| CSLPolyline | SLPolyline creates a polyline object | 
| CSLQuat4 | Quaternion class for angle-axis rotation representation | 
| CSLRay | Ray class with ray and intersection properties | 
| CSLRaySamples2D | Class for 2D disk sample points | 
| CSLRaytracer | SLRaytracer hold all the methods for Whitted style Ray Tracing | 
| CSLRect | A rectangle template class | 
| CSLRectangle | SLRectangle creates a rectangular mesh with a certain resolution | 
| CSLResizeEvent | Specialized SLInput class for window resize events | 
| CSLRevolver | SLRevolver is an SLMesh object built out of revolving points | 
| CSLRnd3f | Abstract base class for random 3D point generator | 
| CSLRnd3fNormal | Class for random generator for normal distributed 3D points | 
| CSLRnd3fUniform | Class for random generator for uniform distributed 3D points | 
| CSLRotationEvent | Specialized SLInput class for all device rotation related input events | 
| CSLRTAAPixel | Pixel index struct used in anti aliasing in ray tracing | 
| CSLScene | Top level instance holding the scene structure | 
| CSLSceneView | SceneView class represents a dynamic real time 3D view onto the scene | 
| CSLScrCaptureRequestEvent | Specialized SLInput class to trigger a screen capture | 
| CSLShadowMap | Class for standard and cascaded shadow mapping | 
| CSLSkybox | Skybox node class with a SLBox mesh | 
| CSLSphere | SLSphere creates a sphere mesh based on SLSpheric w. 180 deg polar angle | 
| CSLSpheric | SLSphere creates a sphere mesh based on SLRevolver | 
| CSLTexColorLUT | SLTexColorLUT defines a lookup table as an 1D texture of (256) RGBA values | 
| ►CSLTexFont | Texture Font class inherits SLGLTexture for alpha blended font rendering | 
| CSLText | SLText creates a mesh using a textured font from SLTexFont | 
| CSLTouchEvent | Specialized SLInput class for touch related input events | 
| CSLTransformKeyframe | SLTransformKeyframe is a specialized SLKeyframe for node transformations | 
| CSLTransformNode | Class that holds all visible gizmo node during mouse transforms | 
| CSLTriangle | A triangle class as the most simplest mesh | 
| CSLUiInterface | Interface for ui integration in SLSceneView | 
| CSLVec2 | 2D vector template class for standard 2D vector algebra | 
| CSLVec3 | 3D vector template class for standard 3D vector algebra | 
| CSLVec4 | 4D vector template class for standard 4D vector algebra | 
| CSLVector | Template class for dynamic vector | 
| CSLVertexOculus | Distorted vertex used to draw in the Oculus frame buffer | 
| CUtils_iOS | SLFileSystem provides basic filesystem functions | 
| CViewController | |
| CWAIApp | Implements app functionality (e.g. scene description, which camera, how to start and use WAISlam) | 
| CWAIBowVector | |
| ►CWAICompassAlignment | |
| CWAIFeatVector | |
| CWAIFrame | |
| CWAIImageStabilizedOrientation | |
| CWAIInitializerData | |
| CWAIKeyFrame | AR Keyframe node class | 
| CWAIKeyFrameDB | AR Keyframe database class | 
| CWAIMap | |
| CWAIMapPoint | |
| CWAIMapPointCoordinate | |
| ►CWAIMapStorage | |
| CWAIOrbVocabulary | |
| ►CWAISlam | |
| CWAISlamTools | |
| ►CWAISlamTrackPool | |
| CWebCamera | Interface to access the camera in the browser | 
| CYUV2RGB_BlockInfo | YUV to RGB image block infos that are different per thread | 
| CYUV2RGB_ImageInfo | YUV to RGB image infos. Offset value can be negative for mirrored copy |