summaryrefslogtreecommitdiff
path: root/utils/hlfaceposer/expressions.h
diff options
context:
space:
mode:
Diffstat (limited to 'utils/hlfaceposer/expressions.h')
-rw-r--r--utils/hlfaceposer/expressions.h51
1 files changed, 51 insertions, 0 deletions
diff --git a/utils/hlfaceposer/expressions.h b/utils/hlfaceposer/expressions.h
new file mode 100644
index 0000000..ecd184c
--- /dev/null
+++ b/utils/hlfaceposer/expressions.h
@@ -0,0 +1,51 @@
+//========= Copyright Valve Corporation, All rights reserved. ============//
+//
+// Purpose:
+//
+// $NoKeywords: $
+//=============================================================================//
+#if !defined( EXPRESSIONS_H )
+#define EXPRESSIONS_H
+#ifdef _WIN32
+#pragma once
+#endif
+
+#include "studio.h"
+#include "expression.h"
+
+class FlexPanel;
+class ControlPanel;
+class MatSysWindow;
+class CExpClass;
+class ExpressionTool;
+
+//-----------------------------------------------------------------------------
+// Purpose:
+//-----------------------------------------------------------------------------
+class IExpressionManager
+{
+public:
+ virtual void Reset( void ) = 0;
+
+ // File i/o
+ virtual void LoadClass( const char *filename ) = 0;
+ virtual void CreateNewClass( const char *filename ) = 0;
+ virtual bool CloseClass( CExpClass *cl ) = 0;
+ virtual void ActivateExpressionClass( CExpClass *cl ) = 0;
+
+ virtual CExpClass *AddCExpClass( const char *classname, const char *filename ) = 0;
+ virtual int GetNumClasses( void ) = 0;
+
+ virtual CExpression *GetCopyBuffer( void ) = 0;
+
+ virtual bool CanClose( void ) = 0;
+
+ virtual CExpClass *GetActiveClass( void ) = 0;
+ virtual CExpClass *GetClass( int num ) = 0;
+ virtual CExpClass *FindClass( const char *classname, bool bMatchBaseNameOnly ) = 0;
+
+};
+
+extern IExpressionManager *expressions;
+
+#endif // EXPRESSIONS_H \ No newline at end of file