diff options
Diffstat (limited to 'public/matsys_controls/matsyscontrols.h')
| -rw-r--r-- | public/matsys_controls/matsyscontrols.h | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/public/matsys_controls/matsyscontrols.h b/public/matsys_controls/matsyscontrols.h new file mode 100644 index 0000000..85fa580 --- /dev/null +++ b/public/matsys_controls/matsyscontrols.h @@ -0,0 +1,72 @@ +//========= Copyright Valve Corporation, All rights reserved. ============// +// +// Purpose: +// +// $NoKeywords: $ +//=============================================================================// + +#ifndef MATSYSCONTROLS_H +#define MATSYSCONTROLS_H + +#ifdef _WIN32 +#pragma once +#endif + +#include "tier1/interface.h" + + +//----------------------------------------------------------------------------- +// Forward declarations +//----------------------------------------------------------------------------- +class IMaterialSystem; +class IMaterialSystemHardwareConfig; +class IMDLCache; +class IMatSystemSurface; +class IStudioRender; + +namespace vgui +{ + +//----------------------------------------------------------------------------- +// handles the initialization of the vgui interfaces. +// NOTE: Calls into VGui_InitInterfacesList +// interfaces (listed below) are first attempted to be loaded from primaryProvider, then secondaryProvider +// moduleName should be the name of the module that this instance of the vgui_controls has been compiled into +//----------------------------------------------------------------------------- +bool VGui_InitMatSysInterfacesList( const char *moduleName, CreateInterfaceFn *factoryList, int numFactories ); + + +//----------------------------------------------------------------------------- +// set of accessor functions to matsys interfaces +// the appropriate header file for each is listed above the item +//----------------------------------------------------------------------------- + +// #include <materialsystem/imaterialsystem.h> +IMaterialSystem *MaterialSystem(); + +// #include <datacache/imdlcache.h> +IMDLCache *MDLCache(); + +// #include <VGuiMatSurface/IMatSystemSurface.h> +IMatSystemSurface *MatSystemSurface(); + +// #include <istudiorender.h" +IStudioRender *StudioRender(); + +// #include <materialsystem/imaterialsystemhardwareconfig.h> +IMaterialSystemHardwareConfig *MaterialSystemHardwareConfig(); + +} // end namespace vgui + + +//----------------------------------------------------------------------------- +// predeclare all the matsys control class names +//----------------------------------------------------------------------------- +class CMDLPanel; +class CMDLSequencePicker; +class CMDLPicker; +class CSequencePicker; +class CGameFileTreeView; + + +#endif // MATSYSCONTROLS_H |