#include "variable.h"
#include "callback.h"
#include "inverse.h"
#include "object.h"
#include "component.h"
#include "problem.h"
#include "sparkapi.h"
#include "spark.h"
Include dependency graph for sparkmacro.h:

Go to the source code of this file.
Defines | |
| #define | _QUOTE_(x) #x |
| Causes the corresponding actual argument to be enclosed in double quotation marks. | |
| #define | _NAMESPACE_(name) _##name |
| Prefixes name with underscore to make it a valid qualifier for a namespace. | |
| #define | START_ARRAY(size) |
| Defines a non-empty array for elements of the pre-defined type element_type. See END_ARRAY. | |
| #define | END_ARRAY }; |
| Defines the end of a non-empty array. See START_ARRAY. | |
| #define | EMPTY_ARRAY |
| Defines an empty array of pre-defined type element_type. | |
| #define | START_PROBLEM(name) |
| Starts the definition of a TProblem object named name. See END_PROBLEM. | |
| #define | END_PROBLEM |
| Ends the definition of a TProblem object. Also takes care of registering the compiled problem pointer with SPARK environment. See START_PROBLEM. | |
| #define | START_INVERSES |
| Start the declaration of list of inverse functions. See END_INVERSES. | |
| #define | END_INVERSES }; |
| Terminates the declaration of the list of inverse functions. See START_INVERSES. | |
This file is included in the "problem.cpp" file by setupcpp. It defines the macros required to compile the problem. There is a one-to-one matching between the XML DTD used in the *.xml file and the preprocessor macros for each section. See the file "spark2.dtd" in the example section.
|
|
Causes the corresponding actual argument to be enclosed in double quotation marks.
|
|
|
Prefixes name with underscore to make it a valid qualifier for a namespace.
|
|
|
Value: const unsigned Size = size; \ element_type Array[] = { \
|
|
|
Defines the end of a non-empty array. See START_ARRAY.
|
|
|
Value: const unsigned Size = 0; \ element_type* Array = 0; \
|
|
|
Value: namespace Problem__##name { \ const char* Name = _QUOTE_(name); \
|
|
|
Value: SPARK::TProblem Element( \ Inverses::Size, Inverses::Array, \ Variables::Size, Variables::Array, \ Components::Size, Components::Array \ ); \ bool IsRegistered = SPARK::Problem::RegisterStaticInstance( Name, &Element ); \ }; \
|
|
|
Value: namespace Inverses { \ typedef SPARK::TInverse* element_type; \
|
|
|
Terminates the declaration of the list of inverse functions. See START_INVERSES.
|