32 lines
835 B
C
32 lines
835 B
C
|
/**
|
||
|
* file: Class.h
|
||
|
* brief: describe the C++ class that is being wrapped
|
||
|
* Author: Frank Dellaert
|
||
|
**/
|
||
|
|
||
|
#pragma once
|
||
|
|
||
|
#include <string>
|
||
|
#include <list>
|
||
|
|
||
|
#include "Constructor.h"
|
||
|
#include "Method.h"
|
||
|
|
||
|
// Class has name, constructors, methods
|
||
|
struct Class {
|
||
|
std::string name;
|
||
|
std::list<Constructor> constructors;
|
||
|
std::list<Method> methods;
|
||
|
|
||
|
// MATLAB code generation:
|
||
|
void matlab_proxy(const std::string& classFile); // proxy class
|
||
|
void matlab_constructors(const std::string& toolboxPath,
|
||
|
const std::string& nameSpace); // constructor wrappers
|
||
|
void matlab_methods(const std::string& classPath,
|
||
|
const std::string& nameSpace); // method wrappers
|
||
|
void matlab_make_fragment(std::ofstream& ofs,
|
||
|
const std::string& toolboxPath,
|
||
|
const std::string& mexFlags); // make fragment
|
||
|
};
|
||
|
|