...
- All arguments 'packed' within a class <ActorName>Arguments
- Class will be automatically generated, and copied to a wrapper package
- Order of attributes corresponds to order of user function arguments
- Every attribute is a class ToolNameArgument keeping not only 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 if arg type is correct
Code Block | ||
---|---|---|
| ||
# AUTO GENERATED ! class <ActorName>Arguments : def __init__(self): self.arg1 = ToolNameArgument( 'InVar', int, None, IN) self.arg2 = ToolNameArgument( 'OutVar', double, None, OUT) self.diagnostic_info = ToolNameDiagnosticInfo() # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # class ToolNameArgument : def __init__(self, name, type, sub_type, intent): self.name = name #'argument name' self.type = type # (INT, DOUBLE, STRING, COMPLEX, IDS) self.sub_type = sub_type #'equilibrium' for IDSes only self.intent = intent # (IN/OUT) self.value = 7. # to be set by user # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # class ToolNameDiagnosticInfo : def __init__(self): self.status self.message # AUTO GENERATED ! class |
XML parameters of user C++/F method
- Not passed as wrapper argument
- Defined (path to XML file) at the time of actor creation by ToolName
Code Block |
---|
class ToolNameXMLParamaters<ActorName>Arguments : def __init__(self): self.arg1parameters = ToolNameArgument( 'InVar', int, None, IN # file name or string or... (?) self.arg2default_parameters = ToolNameArgument( 'OutVar', double, None, OUT # file name or string or ... (?) self.diagnostic_infoschema = ToolNameDiagnosticInfo() |
XML parameters of user C++/F method
...
# file name or string or ... (?) |
Job settings
- A class passed as wrapper arguments
- Tree (of classes) describing job settings
- ToolNameJobSettings class:
- batch_job - class ToolNameBatchJob:
- queue
- ???
- debug - class ToolNameDebug
- debugger - TotalView/gdb
- mode - attach/standalone
- mpi - class ToolNameMPI
- mpi parameters - TBD
- ???
- open_mp - class ToolNameOpenMP
- openMP parameters - TBD
- ???
- sandbox
- path to sandbox
- sandbox 'lifetime'
- batch_job - class ToolNameBatchJob:
...