You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
72 lines
2.2 KiB
72 lines
2.2 KiB
//========= 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
|
|
|