...
Benefits of proposed solution
- Just a few arguments passed to wrapper (and not several)
- Information passed to wrapper is well structured (classes keeping all arguments and settings)
- Proposed solution prevents from errors resulting from incorrect order/type/number of arguments
Arguments required by user C++/F method
a class
- All arguments 'packed' within a class <ActorName>Arguments
- Class will be automatically generated within a wrapper package
- Order of attributes corresponds to order of user function arguments
- Every attribute is a class FC2PyArgument keeping value but also metadata describing argument:
- Name
- Type of value
- Value
- IN or OUT
- Attributes' setters/getters will be overridden - user will set only value of argument
- To reduce complexity visible by user
- To check arg type
Open points
- Incompatibility with existing Python actors!
- Only IN and OUT arguments (no INOUT arguments)
- Diagnostic info
- Info returned from user method
- status flag
- user defined message
- 'Q: can it be mandatory in user sbrt?
- Info returned from user method
- Sandbox:
- Do we need this feature?
- Alternative library:
- Do we need this feature?
...