12 #ifndef SQUIRREL_CLASS_HPP 
   13 #define SQUIRREL_CLASS_HPP 
   21 template <
class CL, ScriptType ST>
 
   24   const char *classname;
 
   34   template <
typename Func>
 
   37     using namespace SQConvert;
 
   38     engine->
AddMethod(function_name, DefSQNonStaticCallback<CL, Func, ST>, 0, NULL, &function_proc, 
sizeof(function_proc));
 
   44   template <
typename Func>
 
   47     using namespace SQConvert;
 
   48     engine->
AddMethod(function_name, DefSQAdvancedNonStaticCallback<CL, Func, ST>, 0, NULL, &function_proc, 
sizeof(function_proc));
 
   57   template <
typename Func>
 
   58   void DefSQMethod(
Squirrel *engine, Func function_proc, 
const char *function_name, 
int nparam, 
const char *params)
 
   60     using namespace SQConvert;
 
   61     engine->
AddMethod(function_name, DefSQNonStaticCallback<CL, Func, ST>, nparam, params, &function_proc, 
sizeof(function_proc));
 
   67   template <
typename Func>
 
   70     using namespace SQConvert;
 
   71     engine->
AddMethod(function_name, DefSQStaticCallback<CL, Func>, 0, NULL, &function_proc, 
sizeof(function_proc));
 
   77   template <
typename Func>
 
   80     using namespace SQConvert;
 
   81     engine->
AddMethod(function_name, DefSQAdvancedStaticCallback<CL, Func>, 0, NULL, &function_proc, 
sizeof(function_proc));
 
   90   template <
typename Func>
 
   93     using namespace SQConvert;
 
   94     engine->
AddMethod(function_name, DefSQStaticCallback<CL, Func>, nparam, params, &function_proc, 
sizeof(function_proc));
 
   97   template <
typename Var>
 
   98   void DefSQConst(
Squirrel *engine, Var value, 
const char *var_name)
 
  108   void PreRegister(
Squirrel *engine, 
const char *parent_class)
 
  113   template <
typename Func, 
int Tnparam>
 
  114   void AddConstructor(
Squirrel *engine, 
const char *params)
 
  116     using namespace SQConvert;
 
  117     engine->
AddMethod(
"constructor", DefSQConstructorCallback<CL, Func, Tnparam>, Tnparam, params);
 
  120   void AddSQAdvancedConstructor(
Squirrel *engine)
 
  122     using namespace SQConvert;
 
  123     engine->
AddMethod(
"constructor", DefSQAdvancedConstructorCallback<CL>, 0, NULL);