41 template <
typename ClassType>
48 template <
typename ClassType,
typename BaseClassType>
62 template <
typename ClassType>
68 template <
typename ReturnType>
69 ManagedClass ®isterStaticMethod(
const std::string &name, ReturnType(*method)());
75 template <
typename ReturnType,
typename ClassType>
76 ManagedClass ®isterMethod(
const std::string &name, ReturnType(ClassType::*method)());
82 template <
typename ReturnType,
typename ClassType>
83 ManagedClass ®isterMethod(
const std::string &name, ReturnType(ClassType::*method)()
const);
88 template <
typename ClassType,
typename A0>
94 template <
typename A0,
typename ReturnType>
95 ManagedClass ®isterStaticMethod(
const std::string &name, ReturnType(*method)(A0));
101 template <
typename A0,
typename ReturnType,
typename ClassType>
102 ManagedClass ®isterMethod(
const std::string &name, ReturnType(ClassType::*method)(A0));
108 template <
typename A0,
typename ReturnType,
typename ClassType>
109 ManagedClass ®isterMethod(
const std::string &name, ReturnType(ClassType::*method)(A0)
const);
114 template <
typename ClassType,
typename A0,
typename A1>
120 template <
typename A0,
typename A1,
typename ReturnType>
121 ManagedClass ®isterStaticMethod(
const std::string &name, ReturnType(*method)(A0, A1));
127 template <
typename A0,
typename A1,
typename ReturnType,
typename ClassType>
128 ManagedClass ®isterMethod(
const std::string &name, ReturnType(ClassType::*method)(A0, A1));
134 template <
typename A0,
typename A1,
typename ReturnType,
typename ClassType>
135 ManagedClass ®isterMethod(
const std::string &name, ReturnType(ClassType::*method)(A0, A1)
const);
140 template <
typename ClassType,
typename A0,
typename A1,
typename A2>
146 template <
typename A0,
typename A1,
typename A2,
typename ReturnType>
147 ManagedClass ®isterStaticMethod(
const std::string &name, ReturnType(*method)(A0, A1, A2));
153 template <
typename A0,
typename A1,
typename A2,
typename ReturnType,
typename ClassType>
154 ManagedClass ®isterMethod(
const std::string &name, ReturnType(ClassType::*method)(A0, A1, A2));
160 template <
typename A0,
typename A1,
typename A2,
typename ReturnType,
typename ClassType>
161 ManagedClass ®isterMethod(
const std::string &name, ReturnType(ClassType::*method)(A0, A1, A2)
const);
166 template <
typename ClassType,
typename A0,
typename A1,
typename A2,
typename A3>
172 template <
typename A0,
typename A1,
typename A2,
typename A3,
typename ReturnType>
173 ManagedClass ®isterStaticMethod(
const std::string &name, ReturnType(*method)(A0, A1, A2, A3));
179 template <
typename A0,
typename A1,
typename A2,
typename A3,
typename ReturnType,
typename ClassType>
180 ManagedClass ®isterMethod(
const std::string &name, ReturnType(ClassType::*method)(A0, A1, A2, A3));
186 template <
typename A0,
typename A1,
typename A2,
typename A3,
typename ReturnType,
typename ClassType>
187 ManagedClass ®isterMethod(
const std::string &name, ReturnType(ClassType::*method)(A0, A1, A2, A3)
const);
192 template <
typename ClassType,
typename A0,
typename A1,
typename A2,
typename A3,
typename A4>
198 template <
typename A0,
typename A1,
typename A2,
typename A3,
typename A4,
typename ReturnType>
199 ManagedClass ®isterStaticMethod(
const std::string &name, ReturnType(*method)(A0, A1, A2, A3, A4));
205 template <
typename A0,
typename A1,
typename A2,
typename A3,
typename A4,
typename ReturnType,
typename ClassType>
206 ManagedClass ®isterMethod(
const std::string &name, ReturnType(ClassType::*method)(A0, A1, A2, A3, A4));
212 template <
typename A0,
typename A1,
typename A2,
typename A3,
typename A4,
typename ReturnType,
typename ClassType>
213 ManagedClass ®isterMethod(
const std::string &name, ReturnType(ClassType::*method)(A0, A1, A2, A3, A4)
const);
218 template <
typename ClassType,
typename A0,
typename A1,
typename A2,
typename A3,
typename A4,
typename A5>
224 template <
typename A0,
typename A1,
typename A2,
typename A3,
typename A4,
typename A5,
typename ReturnType>
225 ManagedClass ®isterStaticMethod(
const std::string &name, ReturnType(*method)(A0, A1, A2, A3, A4, A5));
231 template <
typename A0,
typename A1,
typename A2,
typename A3,
typename A4,
typename A5,
typename ReturnType,
typename ClassType>
232 ManagedClass ®isterMethod(
const std::string &name, ReturnType(ClassType::*method)(A0, A1, A2, A3, A4, A5));
238 template <
typename A0,
typename A1,
typename A2,
typename A3,
typename A4,
typename A5,
typename ReturnType,
typename ClassType>
239 ManagedClass ®isterMethod(
const std::string &name, ReturnType(ClassType::*method)(A0, A1, A2, A3, A4, A5)
const);
244 template <
typename ClassType,
typename A0,
typename A1,
typename A2,
typename A3,
typename A4,
typename A5,
typename A6>
250 template <
typename A0,
typename A1,
typename A2,
typename A3,
typename A4,
typename A5,
typename A6,
typename ReturnType>
251 ManagedClass ®isterStaticMethod(
const std::string &name, ReturnType(*method)(A0, A1, A2, A3, A4, A5, A6));
257 template <
typename A0,
typename A1,
typename A2,
typename A3,
typename A4,
typename A5,
typename A6,
typename ReturnType,
typename ClassType>
258 ManagedClass ®isterMethod(
const std::string &name, ReturnType(ClassType::*method)(A0, A1, A2, A3, A4, A5, A6));
264 template <
typename A0,
typename A1,
typename A2,
typename A3,
typename A4,
typename A5,
typename A6,
typename ReturnType,
typename ClassType>
265 ManagedClass ®isterMethod(
const std::string &name, ReturnType(ClassType::*method)(A0, A1, A2, A3, A4, A5, A6)
const);
270 template <
typename ClassType,
typename A0,
typename A1,
typename A2,
typename A3,
typename A4,
typename A5,
typename A6,
typename A7>
276 template <
typename A0,
typename A1,
typename A2,
typename A3,
typename A4,
typename A5,
typename A6,
typename A7,
typename ReturnType>
277 ManagedClass ®isterStaticMethod(
const std::string &name, ReturnType(*method)(A0, A1, A2, A3, A4, A5, A6, A7));
283 template <
typename A0,
typename A1,
typename A2,
typename A3,
typename A4,
typename A5,
typename A6,
typename A7,
typename ReturnType,
typename ClassType>
284 ManagedClass ®isterMethod(
const std::string &name, ReturnType(ClassType::*method)(A0, A1, A2, A3, A4, A5, A6, A7));
290 template <
typename A0,
typename A1,
typename A2,
typename A3,
typename A4,
typename A5,
typename A6,
typename A7,
typename ReturnType,
typename ClassType>
291 ManagedClass ®isterMethod(
const std::string &name, ReturnType(ClassType::*method)(A0, A1, A2, A3, A4, A5, A6, A7)
const);
296 template <
typename ClassType,
typename A0,
typename A1,
typename A2,
typename A3,
typename A4,
typename A5,
typename A6,
typename A7,
typename A8>
302 template <
typename A0,
typename A1,
typename A2,
typename A3,
typename A4,
typename A5,
typename A6,
typename A7,
typename A8,
typename ReturnType>
303 ManagedClass ®isterStaticMethod(
const std::string &name, ReturnType(*method)(A0, A1, A2, A3, A4, A5, A6, A7, A8));
309 template <
typename A0,
typename A1,
typename A2,
typename A3,
typename A4,
typename A5,
typename A6,
typename A7,
typename A8,
typename ReturnType,
typename ClassType>
310 ManagedClass ®isterMethod(
const std::string &name, ReturnType(ClassType::*method)(A0, A1, A2, A3, A4, A5, A6, A7, A8));
316 template <
typename A0,
typename A1,
typename A2,
typename A3,
typename A4,
typename A5,
typename A6,
typename A7,
typename A8,
typename ReturnType,
typename ClassType>
317 ManagedClass ®isterMethod(
const std::string &name, ReturnType(ClassType::*method)(A0, A1, A2, A3, A4, A5, A6, A7, A8)
const);
329 template <
typename ClassType,
typename ValueType>
330 ManagedClass ®isterField(
const std::string &name, ValueType ClassType::*member);
382 template <
typename ClassType>
427 static void unload(
const std::string &classPath);
435 const std::type_info &type(
void)
const;
441 const std::type_info &pointerType(
void)
const;
447 const std::type_info &sharedType(
void)
const;
452 const Callable &getReferenceToWrapper(
void)
const;
457 const Callable &getPointerToWrapper(
void)
const;
462 const Callable &getSharedToWrapper(
void)
const;
468 const std::vector<Callable> &getBaseClassConverters(
void)
const;
474 const std::vector<Callable> &getConstructors(
void)
const;
482 const std::vector<Callable> &getStaticMethods(
const std::string &name)
const;
490 const std::vector<Callable> &getMethods(
const std::string &name)
const;
497 const Callable &getOpaqueConstructor(
void)
const;
506 const Callable &getOpaqueStaticMethod(
const std::string &name)
const;
514 const Callable &getWildcardStaticMethod(
void)
const;
523 const Callable &getOpaqueMethod(
const std::string &name)
const;
531 const Callable &getWildcardMethod(
void)
const;
535 std::shared_ptr<Impl> _impl;
#define POTHOS_API
Definition: Config.hpp:41
Definition: Callable.tmpl.hpp:30