![]() |
Pothos
0.2.1-g9f04573d
The Pothos dataflow programming software suite
|
#include <ciso646>Go to the source code of this file.
Macros | |
| #define | POTHOS_HELPER_DLL_IMPORT |
| #define | POTHOS_HELPER_DLL_EXPORT |
| #define | POTHOS_HELPER_DLL_LOCAL |
| #define | POTHOS_DLL |
| #define | POTHOS_API POTHOS_HELPER_DLL_IMPORT |
| #define | POTHOS_EXTERN extern |
| #define | POTHOS_LOCAL POTHOS_HELPER_DLL_LOCAL |
| #define | POTHOS_FCN_TUPLE(classPath, functionName) #functionName, &classPath::functionName |
| #define | pothos_explicit explicit |
Common macro definitions for library API export.
| #define POTHOS_API POTHOS_HELPER_DLL_IMPORT |
| #define POTHOS_DLL |
| #define pothos_explicit explicit |
Define explicit operator casts on systems that support it. For visual studios older than 2013 this is not supported. Basically we use explcit conversions for boolean operators; and without explicit, everything should work correctly, however misused code would be able to compile. Someday, remove this section and replace pothos_explicit.
| #define POTHOS_EXTERN extern |
| #define POTHOS_FCN_TUPLE | ( | classPath, | |
| functionName | |||
| ) | #functionName, &classPath::functionName |
The function tuple emits a string name + function pointer tuple. This macro simplifies specifying a function name more than once for API calls that take a string name and function pointer.
Example: To simplify this->register("foo", &MyNamespace::MyClass::foo), this->register(POTHOS_FCN_TUPLE(MyNamespace::MyClass, foo));
| classPath | the colon separated namespace and class name |
| functionName | the name of a function within the specified classPath |
| #define POTHOS_HELPER_DLL_EXPORT |
| #define POTHOS_HELPER_DLL_IMPORT |
| #define POTHOS_HELPER_DLL_LOCAL |
| #define POTHOS_LOCAL POTHOS_HELPER_DLL_LOCAL |
1.8.6