00001 /********************************************************************** 00002 00003 FILE: IGlobalDXDisplayManager.h 00004 00005 DESCRIPTION: Public interface controlling the display of the Dx Effect 00006 in the Viewport 00007 00008 CREATED BY: Neil Hazzard, Discreet 00009 00010 HISTORY: Created 21 May 2003 00011 00012 *> Copyright (c) 2003, All Rights Reserved. 00013 **********************************************************************/ 00014 #pragma once 00015 00016 #include "iFnPub.h" 00017 #include "GetCOREInterface.h" 00018 00019 #define GLOBAL_DX_DISPLAY_MANAGER_INTERFACE Interface_ID(0x7ebe15d6, 0x2b7b422b) 00020 00022 00031 class IGlobalDXDisplayManager : public FPStaticInterface 00032 { 00033 public: 00034 00036 00039 virtual void SetForceSoftware(BOOL set=TRUE)=0; 00040 00042 00045 virtual void SetForceSelected(BOOL set =TRUE )=0; 00046 00048 00051 virtual BOOL IsForceSoftware()=0; 00052 00054 00057 virtual BOOL IsForceSelected()=0; 00058 00060 00063 virtual BOOL IsDirectXActive()=0; 00064 00065 }; 00066 00067 inline IGlobalDXDisplayManager* GetGlobalDXDisplayManager() { return (IGlobalDXDisplayManager*)GetCOREInterface(GLOBAL_DX_DISPLAY_MANAGER_INTERFACE); } 00068 00069 00071 00074 class IGlobalDXDisplayManager2 : public IGlobalDXDisplayManager 00075 { 00076 public: 00078 00081 virtual BOOL IsSceneActive()=0; 00082 00084 00087 virtual void SetSceneActive(BOOL set)=0; 00088 }; 00089 00090 inline IGlobalDXDisplayManager2* GetGlobalDXDisplayManager2() { return (IGlobalDXDisplayManager2*)GetCOREInterface(GLOBAL_DX_DISPLAY_MANAGER_INTERFACE); } 00091 00092