######
IWorld
######

.. cpp:namespace:: ART::IWorld

.. default-domain:: cpp

Functions
=========

============================ ===================================================================================================================================================================================================
..                           :cpp:func:`SET_CID <ART::IWorld::SET_CID>`                                                                                                                                                         
:cpp:enumerator:`~RED_RC`    :cpp:func:`SetupSolarSystem <virtual RED_RC ART::IWorld::SetupSolarSystem()=0>`                                                                                                                    
:cpp:enumerator:`~RED_RC`    :cpp:func:`SetupEarthSystem <virtual RED_RC ART::IWorld::SetupEarthSystem()=0>`                                                                                                                    
int                          :cpp:func:`GetCelestialBodiesCount <virtual int ART::IWorld::GetCelestialBodiesCount() const =0>`                                                                                                  
:doc:`classRED_1_1Object` *  :cpp:func:`GetCelestialBody <virtual RED::Object * ART::IWorld::GetCelestialBody(int iNumber) const =0>`                                                                                           
:doc:`classRED_1_1Object` *  :cpp:func:`GetPlanet <virtual RED::Object * ART::IWorld::GetPlanet(ART::PLANET_ID iID) const =0>`                                                                                                  
:doc:`classRED_1_1Object` *  :cpp:func:`GetStar <virtual RED::Object * ART::IWorld::GetStar(ART::STAR_ID iID) const =0>`                                                                                                        
:cpp:enumerator:`~RED_RC`    :cpp:func:`AddCelestialBody <virtual RED_RC ART::IWorld::AddCelestialBody(RED::Object *iBody)=0>`                                                                                                  
:cpp:enumerator:`~RED_RC`    :cpp:func:`ClearCelestialBodies <virtual RED_RC ART::IWorld::ClearCelestialBodies()=0>`                                                                                                            
:cpp:enumerator:`~RED_RC`    :cpp:func:`AddCustomShape <virtual RED_RC ART::IWorld::AddCustomShape(RED::Object *iShape, bool iDefaultMaterial=true)=0>`                                                                         
:cpp:enumerator:`~RED_RC`    :cpp:func:`RemoveCustomShape <virtual RED_RC ART::IWorld::RemoveCustomShape(RED::Object *iShape)=0>`                                                                                               
:cpp:enumerator:`~RED_RC`    :cpp:func:`EnableCustomShapes <virtual RED_RC ART::IWorld::EnableCustomShapes(bool iEnable)=0>`                                                                                                    
bool                         :cpp:func:`IsStarted <virtual bool ART::IWorld::IsStarted() const =0>`                                                                                                                             
:cpp:enumerator:`~RED_RC`    :cpp:func:`Start <virtual RED_RC ART::IWorld::Start(RED::Object *iWindow, ART::ProgressCallback iProgress=NULL, void *iParam=NULL)=0>`                                                             
:cpp:enumerator:`~RED_RC`    :cpp:func:`Update <virtual RED_RC ART::IWorld::Update(bool iSkipRendering=false)=0>`                                                                                                               
bool                         :cpp:func:`IsLandscapeUpdateDone <virtual bool ART::IWorld::IsLandscapeUpdateDone() const =0>`                                                                                                     
:cpp:enumerator:`~RED_RC`    :cpp:func:`Shutdown <virtual RED_RC ART::IWorld::Shutdown()=0>`                                                                                                                                    
:doc:`classRED_1_1Object` *  :cpp:func:`GetWindow <virtual RED::Object * ART::IWorld::GetWindow() const =0>`                                                                                                                    
:cpp:enumerator:`~RED_RC`    :cpp:func:`ResizeWindow <virtual RED_RC ART::IWorld::ResizeWindow(int iNewWidth, int iNewHeight)=0>`                                                                                               
:cpp:enumerator:`~RED_RC`    :cpp:func:`GetWindowSize <virtual RED_RC ART::IWorld::GetWindowSize(int &oWidth, int &oHeight) const =0>`                                                                                          
void                         :cpp:func:`SetOffscreenRendering <virtual void ART::IWorld::SetOffscreenRendering(bool iOnOff)=0>`                                                                                                 
void                         :cpp:func:`OverrideGlobalTime <virtual void ART::IWorld::OverrideGlobalTime(double iElapsed)=0>`                                                                                                   
double                       :cpp:func:`GetGlobalTimeOverride <virtual double ART::IWorld::GetGlobalTimeOverride() const =0>`                                                                                                   
double                       :cpp:func:`GetGlobalElapsedTime <virtual double ART::IWorld::GetGlobalElapsedTime() const =0>`                                                                                                     
double                       :cpp:func:`GetLastFrameTime <virtual double ART::IWorld::GetLastFrameTime() const =0>`                                                                                                             
double                       :cpp:func:`GetTimeNow <virtual double ART::IWorld::GetTimeNow() const =0>`                                                                                                                         
double                       :cpp:func:`GetSimulationElapsedTime <virtual double ART::IWorld::GetSimulationElapsedTime() const =0>`                                                                                             
void                         :cpp:func:`SetSimulationElapsedTime <virtual void ART::IWorld::SetSimulationElapsedTime(double iElpased)=0>`                                                                                       
double                       :cpp:func:`GetSimulationLastFrameTime <virtual double ART::IWorld::GetSimulationLastFrameTime() const =0>`                                                                                         
void                         :cpp:func:`SetSimulationTimeScale <virtual void ART::IWorld::SetSimulationTimeScale(double iTimeScale)=0>`                                                                                         
double                       :cpp:func:`GetSimulationTimeScale <virtual double ART::IWorld::GetSimulationTimeScale() const =0>`                                                                                                 
:cpp:enumerator:`~RED_RC`    :cpp:func:`Pick <virtual RED_RC ART::IWorld::Pick(bool &oIsPick, double oPick[3], int iX, int iY, bool iPickDeferred, bool iPickTranspar, bool iPickClouds) const =0>`                             
:cpp:enumerator:`~RED_RC`    :cpp:func:`PickGeometry <virtual RED_RC ART::IWorld::PickGeometry(bool &oIsPick, double oPick[3], double oNorm[3], RED::Object *&oGeometry, RED::ShapePath &oShapePath, int iX, int iY) const =0>` 
:cpp:enumerator:`~RED_RC`    :cpp:func:`PickCloudsCovers <virtual RED_RC ART::IWorld::PickCloudsCovers(bool &oIsPick, RED::Object *&oCloudsCover, int iX, int iY) const =0>`                                                    
:cpp:enumerator:`~RED_RC`    :cpp:func:`PickClouds <RED_RC ART::IWorld::PickClouds(bool &oIsPick, RED::String &oCloudName, int iX, int iY) const>`                                                                              
:cpp:enumerator:`~RED_RC`    :cpp:func:`PickPrisms <RED_RC ART::IWorld::PickPrisms(bool &oIsPick, RED::String &oPrismName, int iX, int iY) const>`                                                                              
:cpp:enumerator:`~RED_RC`    :cpp:func:`PickCustomShapes <virtual RED_RC ART::IWorld::PickCustomShapes(bool &oIsPick, RED::ShapePath &oShapePath, int iX, int iY) const =0>`                                                    
:cpp:enumerator:`~RED_RC`    :cpp:func:`PickCustomShapes <virtual RED_RC ART::IWorld::PickCustomShapes(bool &oIsPick, RED::Vector< RED::ShapePath > &oShapePath, int iX, int iY) const =0>`                                     
:cpp:enumerator:`~RED_RC`    :cpp:func:`StartOculusRendering <virtual RED_RC ART::IWorld::StartOculusRendering()=0>`                                                                                                            
:cpp:enumerator:`~RED_RC`    :cpp:func:`StopOculusRendering <virtual RED_RC ART::IWorld::StopOculusRendering()=0>`                                                                                                              
bool                         :cpp:func:`IsOculusRendering <virtual bool ART::IWorld::IsOculusRendering() const =0>`                                                                                                             
:cpp:enumerator:`~RED_RC`    :cpp:func:`StartOpenVRRendering <virtual RED_RC ART::IWorld::StartOpenVRRendering()=0>`                                                                                                            
:cpp:enumerator:`~RED_RC`    :cpp:func:`StopOpenVRRendering <virtual RED_RC ART::IWorld::StopOpenVRRendering()=0>`                                                                                                              
bool                         :cpp:func:`IsOpenVRRendering <virtual bool ART::IWorld::IsOpenVRRendering() const =0>`                                                                                                             
:cpp:enumerator:`~RED_RC`    :cpp:func:`AddEntity <virtual RED_RC ART::IWorld::AddEntity(RED::Object *iEntity)=0>`                                                                                                              
:cpp:enumerator:`~RED_RC`    :cpp:func:`RemoveEntity <virtual RED_RC ART::IWorld::RemoveEntity(RED::Object *iEntity)=0>`                                                                                                        
:cpp:enumerator:`~RED_RC`    :cpp:func:`ClearEntities <virtual RED_RC ART::IWorld::ClearEntities()=0>`                                                                                                                          
:cpp:enumerator:`~RED_RC`    :cpp:func:`GetEntitiesCount <virtual RED_RC ART::IWorld::GetEntitiesCount(unsigned int &oCount) const =0>`                                                                                         
:cpp:enumerator:`~RED_RC`    :cpp:func:`GetEntity <virtual RED_RC ART::IWorld::GetEntity(RED::Object *&oEntity, unsigned int iIndex) const =0>`                                                                                 
void                         :cpp:func:`SetErrorTrackingCallback <virtual void ART::IWorld::SetErrorTrackingCallback(RED::REDSDK_ERROR_CALLBACK iCallback, void *iUser)=0>`                                                     
void                         :cpp:func:`GetErrorTrackingCallback <virtual void ART::IWorld::GetErrorTrackingCallback(RED::REDSDK_ERROR_CALLBACK &oCallback, void *&oUser) const =0>`                                            
:cpp:enumerator:`~RED_RC`    :cpp:func:`Save <virtual RED_RC ART::IWorld::Save(const RED::String &iPath, const RED::Matrix *iOrigin=NULL, ART::ProgressCallback iProgress=NULL, void *iParam=NULL)=0>`                          
:cpp:enumerator:`~RED_RC`    :cpp:func:`FocusObserverOnGeometry <virtual RED_RC ART::IWorld::FocusObserverOnGeometry(RED::Object *iGeometry)=0>`                                                                                
============================ ===================================================================================================================================================================================================

.. cpp:namespace:: nullptr

Detailed Description
====================

.. doxygenclass:: ART::IWorld
   :project: RED
   :members:
   :undoc-members:



