//========= Copyright © 1996-2005, Valve Corporation, All rights reserved. ============//
//
// Purpose:		
//
//=============================================================================//

#ifndef HL2_PYTHON_H
#define HL2_PYTHON_H

#ifdef _WIN32
#pragma once
#endif

#define PYTHON_PRINT_COLOR Color(0, 0, 255, 255)
#define PYTHON_ERROR_PRINT_COLOR Color(255, 0, 255, 255)



bool InitHL2Python();
bool CloseHL2Python();

bool RunPythonFile( const char* scriptname );

void RunPythonString( const char* string );

// This function will try to convert the python result to the template type
template <class T>
T RunPythonStringT( const char* string );

// This can take one argument to passed to python. 
// refer in the string to the argument as "arg1"
template <class T, class A1>
T RunPythonStringT( const char* string, A1 arg1 );

// import
bool ImportPythonModule( const char* scriptname );
bool ReloadPythonModule( const char* scriptname );

#endif // HL2_PYTHON_H