00001 /*============================================================================== 00002 00003 file: IRadiosityPreferences.h 00004 00005 author: Daniel Levesque 00006 00007 created: 7 September 2001 00008 00009 description: 00010 00011 Interface for accessing radiosity preferences. 00012 00013 00014 modified: September 14, 2001 David Cunningham 00015 - added use/compute radiosity file setting access 00016 00017 September 17, 2001 Daniel Levesque 00018 - addition of Get/Set 'Save Geometry' methods 00019 00020 May 20, 2003 Alexandre Cossette 00021 - addition of Get/Set 'Update Data When Required on Start' 00022 00023 June 9, 2003 Alexandre Cossette 00024 - removed 'Display Warning on GI Props Change' 00025 00026 00027 (c) 2001 Autodesk 00028 ==============================================================================*/ 00029 00030 #pragma once 00031 00032 #include "ifnpub.h" 00033 00034 #define IRADIOSITYPREFERENCES_INTERFACE Interface_ID(0x54442e40, 0x401621a4) 00035 00036 //============================================================================== 00037 // class IRadiosityPreferences 00038 // 00039 // This class defines the interface for accessing the Radiosity Preferences 00040 // from the 'Radiosity' tab in the preferences dialog. 00041 // 00042 // It also provides access to the use/compute radiosity controls found in the 00043 // Rendering dialog. 00044 // 00045 // To get the a pointer to the interface, call: 00046 // static_cast<IRadiosityPreferences*>(GetCOREInterface(IRADIOSITYPREFERENCES_INTERFACE)) 00047 // 00048 //============================================================================== 00063 class IRadiosityPreferences : public FPStaticInterface { 00064 00065 public: 00066 00067 // Global user settings that are stored in a .ini file 00068 00069 // Automatically process refine steps stored in objects 00073 virtual BOOL GetAutoProcessObjectRefine() const = 0; 00081 virtual void SetAutoProcessObjectRefine(BOOL val) = 0; 00082 //Display reflectance/transmittance information in the material editor 00087 virtual BOOL GetDisplayReflectanceInMEditor() const = 0; 00096 virtual void SetDisplayReflectanceInMEditor(BOOL val) = 0; 00097 // Display radiosity in the viewport 00101 virtual BOOL GetDisplayInViewport() const = 0; 00109 virtual void SetDisplayInViewport(BOOL val) = 0; 00110 // Display warning on reset 00114 virtual BOOL GetDisplayResetWarning() const = 0; 00122 virtual void SetDisplayResetWarning(BOOL val) = 0; 00123 // Automatically update solution data when required 00124 virtual BOOL GetUpdateDataWhenRequiredOnStart() const = 0; 00125 virtual void SetUpdateDataWhenRequiredOnStart(BOOL val) = 0; 00126 // Save the geometry along with the solution in the .max file, for faster load times. 00130 virtual BOOL GetSaveScene() const = 0; 00138 virtual void SetSaveScene(BOOL val) = 0; 00139 00145 // Use radiosity when rendering 00149 virtual BOOL GetUseRadiosity() const = 0; 00157 virtual void SetUseRadiosity(BOOL val) = 0; 00158 // Automatically compute radiosity when rendering, if necessary. 00162 virtual BOOL GetComputeRadiosity() const = 0; 00169 virtual void SetComputeRadiosity(BOOL val) = 0; 00170 }; 00171 00172