10 typedef void mxFunc(
int, mxArray*[],
int,
const mxArray*[]);
13 std::function<mxFunc>
f;
16 func_data(std::function<mxFunc>
function,
int out_args,
int in_args) :
func_data(function, out_args, in_args, in_args) {}
17 func_data(std::function<mxFunc>
function,
int out_args,
int in_min_args,
int in_max_args) : f(function), out(out_args), in_min(in_min_args), in_max(in_max_args) {}
24 std::map<std::string, func_data>
funcs;
29 funcs.emplace(fname,
func_data(func, out, in));
33 funcs.emplace(fname,
func_data(func, out, in_min, in_max));
39 auto func = funcs.find(
f);
48 std::map<std::string, ClassFactory>
classes;
54 auto cls = classes.find(c);
55 if (cls == classes.end())
return func_data();
56 return cls->second.get(
f);
ClassFactory(std::string n)
func_data(std::function< mxFunc > function, int out_args, int in_args)
GLuint const GLchar * name
std::map< std::string, func_data > funcs
std::map< std::string, ClassFactory > classes
GLsizei const GLchar *const * string
void record(ClassFactory cls)
void record(std::string fname, int out, int in_min, int in_max, std::function< mxFunc > func)
void record(std::string fname, int out, int in, std::function< mxFunc > func)
func_data(std::function< mxFunc > function, int out_args, int in_min_args, int in_max_args)
std::function< mxFunc > f
void mxFunc(int, mxArray *[], int, const mxArray *[])