A Function object corresponds to a function member of a window. More...
#include <Function.h>

Public Types | |
| enum | { MAX_NUMARG =14 } |
| enum | { F_FUNC, C_FUNC, CPP_MEMBER } |
Public Member Functions | |
Constructors | |
| Function () | |
| Default constructor. More... | |
| Function (Func_ptr p, const std::string &s, const int *t, Attribute *a, bool b=false) | |
| Create a function object with physical address p. More... | |
| Function (Member_func_ptr p, const std::string &s, const int *t, Attribute *a) | |
Access methods | |
| Func_ptr | pointer () |
| Get physical address of the function. More... | |
| int | num_of_args () const |
| Get the number of arguments. More... | |
| bool | is_input (int i) const |
| Check whether the ith argument is for input. More... | |
| bool | is_output (int i) const |
| Check whether the ith argument is for output. More... | |
| bool | is_literal (int i) const |
| Check whether the ith argument is literal type. More... | |
| bool | is_optional (int i) const |
| Check whether the ith argument is optional. More... | |
| bool | is_rawdata (int i) const |
| Check whether the ith argument is raw. More... | |
| bool | is_metadata (int i) const |
| Check whether the ith argument is meta. More... | |
| bool | is_fortran () const |
| COM_Type | data_type (int i) const |
| char | intent (int i) const |
| void | set_communicator (MPI_Comm c) |
| MPI_Comm | communicator () const |
| Attribute * | attribute () |
Invocation | |
| void | operator() () |
| void | operator() (void *a1) |
| void | operator() (void *a1, void *a2) |
| void | operator() (void *a1, void *a2, void *a3) |
| void | operator() (void *a1, void *a2, void *a3, void *a4) |
| void | operator() (void *a1, void *a2, void *a3, void *a4, void *a5) |
| void | operator() (void *a1, void *a2, void *a3, void *a4, void *a5, void *a6) |
| void | operator() (void *a1, void *a2, void *a3, void *a4, void *a5, void *a6, void *a7) |
| void | operator() (void *a1, void *a2, void *a3, void *a4, void *a5, void *a6, void *a7, void *a8) |
| void | operator() (void *a1, void *a2, void *a3, void *a4, void *a5, void *a6, void *a7, void *a8, void *a9) |
| void | operator() (void *a1, void *a2, void *a3, void *a4, void *a5, void *a6, void *a7, void *a8, void *a9, void *a10) |
| void | operator() (void *a1, void *a2, void *a3, void *a4, void *a5, void *a6, void *a7, void *a8, void *a9, void *a10, void *a11) |
| void | operator() (void *a1, void *a2, void *a3, void *a4, void *a5, void *a6, void *a7, void *a8, void *a9, void *a10, void *a11, void *a12) |
| void | operator() (void *a1, void *a2, void *a3, void *a4, void *a5, void *a6, void *a7, void *a8, void *a9, void *a10, void *a11, void *a12, void *a13) |
| void | operator() (void *a1, void *a2, void *a3, void *a4, void *a5, void *a6, void *a7, void *a8, void *a9, void *a10, void *a11, void *a12, void *a13, void *a14) |
| void | operator() (int n, void **ps) throw (COM_exception) |
| invoke with an array of arguments More... | |
Private Member Functions | |
| void | validate_object (void *a1) |
Private Attributes | |
| union { | |
| Func_ptr _ptr | |
| Pointer to a regular function. More... | |
| Member_func_ptr _mem_ptr | |
| Pointer to a member function. More... | |
| }; | |
| std::string | _intents |
| Intention of the argument. More... | |
| std::vector< COM_Type > | _types |
| Data type of the arguments. More... | |
| Attribute * | _attr |
| Member function. More... | |
| MPI_Comm | _comm |
| int | _ftype |
| Indicate the type of the function. More... | |
A Function object corresponds to a function member of a window.
It can take up to MAX_NUMARG arguments of void* type (excluding the implicit arguments) and return no value.
Definition at line 49 of file Function.h.
| anonymous enum |
| anonymous enum |
| Enumerator | |
|---|---|
| F_FUNC | |
| C_FUNC | |
| CPP_MEMBER | |
Definition at line 52 of file Function.h.
|
inline |
Create a function object with physical address p.
| p | physical address of the function. |
| s | the intentions of the arguments. Its length indicates the number of arguments. Each entry indicates the intention of its corresponding argument: 'i'/'I' for input-only; 'o'/'O' for output-only; 'b'/'B' for input and output. Uppercase indicates optional arguments. |
| t | the data types of the arguments. If it is COM_METADATA, then the argument should be a pointer to an attribute. If it is COM_RAWDATA, then argument should be the physical address of the values of an attribute. Otherwise, it is literal type and the argument should be a pointer to corresponding data type. |
| a | attribute with which a member functions is associated. |
| b | whether the function is a Fortran subroutine |
Definition at line 77 of file Function.h.
Definition at line 81 of file Function.h.
|
inline |
Definition at line 121 of file Function.h.
References _attr.
Referenced by Roccom_base::call_function().

|
inline |
Definition at line 119 of file Function.h.
References _comm.
Referenced by rflo_initflowsolver(), rflu_modrocstaradmin::rflu_genx_createwindows(), rflu_modrocstario::rflu_genx_putdataflow(), rflu_modrocstario::rflu_genx_putdatagspeedssurf(), rflu_modrocstario::rflu_genx_putdatagspeedsvol(), rflu_modrocstario::rflu_genx_putdatainterf(), rflu_modrocstario::rflu_genx_putgridsurf(), rflu_modrocstario::rflu_genx_putgridvol(), rflu_modrocstario::rflu_genx_readwindow(), rflu_modrocstaradmin::rflu_genx_storecommunicator(), rflu_initflowsolver(), and rflu_initglobal().

|
inline |
Definition at line 115 of file Function.h.
Referenced by Roccom_base::call_function().

|
inline |
Definition at line 116 of file Function.h.
Referenced by Roccom_base::call_function().

|
inline |
Definition at line 114 of file Function.h.
References _ftype, and F_FUNC.
Referenced by Roccom_base::call_function().

|
inline |
|
inline |
Check whether the ith argument is literal type.
Definition at line 101 of file Function.h.
References _types, COM_F90POINTER, COM_METADATA, COM_RAWDATA, and i.
Referenced by Roccom_base::call_function().

|
inline |
Check whether the ith argument is meta.
Definition at line 111 of file Function.h.
References _types, COM_METADATA, and i.
|
inline |
Check whether the ith argument is optional.
Definition at line 105 of file Function.h.
Referenced by Roccom_base::call_function().

|
inline |
|
inline |
Check whether the ith argument is raw.
Definition at line 108 of file Function.h.
References _types, COM_F90POINTER, COM_RAWDATA, and i.
Referenced by Roccom_base::call_function().

|
inline |
Get the number of arguments.
Definition at line 93 of file Function.h.
References _intents.
Referenced by Roccom_base::call_function(), and Roccom_base::get_num_arguments().

|
inline |
Definition at line 129 of file Function.h.
References _ptr.
Referenced by operator()().

|
inline |
Definition at line 131 of file Function.h.
References _ftype, _mem_ptr, _ptr, CPP_MEMBER, and validate_object().

|
inline |
Definition at line 144 of file Function.h.
References _ftype, _mem_ptr, _ptr, CPP_MEMBER, and validate_object().

|
inline |
Definition at line 157 of file Function.h.
References _ftype, _mem_ptr, _ptr, CPP_MEMBER, and validate_object().

|
inline |
Definition at line 171 of file Function.h.
References _ftype, _mem_ptr, _ptr, CPP_MEMBER, and validate_object().

|
inline |
Definition at line 185 of file Function.h.
References _ftype, _mem_ptr, _ptr, CPP_MEMBER, and validate_object().

|
inline |
Definition at line 199 of file Function.h.
References _ftype, _mem_ptr, _ptr, CPP_MEMBER, and validate_object().

|
inline |
Definition at line 214 of file Function.h.
References _ftype, _mem_ptr, _ptr, CPP_MEMBER, and validate_object().

|
inline |
Definition at line 230 of file Function.h.
References _ftype, _mem_ptr, _ptr, CPP_MEMBER, and validate_object().

|
inline |
Definition at line 246 of file Function.h.
References _ftype, _mem_ptr, _ptr, CPP_MEMBER, and validate_object().

|
inline |
Definition at line 263 of file Function.h.
References _ftype, _mem_ptr, _ptr, CPP_MEMBER, and validate_object().

|
inline |
Definition at line 280 of file Function.h.
References _ftype, _mem_ptr, _ptr, CPP_MEMBER, and validate_object().

|
inline |
Definition at line 297 of file Function.h.
References _ftype, _mem_ptr, _ptr, CPP_MEMBER, and validate_object().

|
inline |
Definition at line 317 of file Function.h.
References _ftype, _mem_ptr, _ptr, CPP_MEMBER, and validate_object().

|
inline |
Definition at line 336 of file Function.h.
References _ftype, _mem_ptr, _ptr, CPP_MEMBER, and validate_object().

|
inline | ||||||||||||||||||||
invoke with an array of arguments
Definition at line 357 of file Function.h.
References COM_ERR_TOO_MANY_ARGS, n, and operator()().

|
inline |
|
inline |
Definition at line 118 of file Function.h.
References _comm.
Referenced by Roccom_base::set_profiling_barrier().

|
inlineprivate |
Definition at line 384 of file Function.h.
References COM_assertion_msg.
Referenced by operator()().

| union { ... } |
|
private |
|
private |
Definition at line 402 of file Function.h.
Referenced by communicator(), and set_communicator().
|
private |
Indicate the type of the function.
Definition at line 403 of file Function.h.
Referenced by is_fortran(), and operator()().
|
private |
Intention of the argument.
Its length indicates the number of arguments
Definition at line 398 of file Function.h.
Referenced by intent(), is_input(), is_optional(), is_output(), and num_of_args().
| Member_func_ptr _mem_ptr |
Pointer to a member function.
Definition at line 396 of file Function.h.
Referenced by operator()().
| Func_ptr _ptr |
Pointer to a regular function.
Definition at line 395 of file Function.h.
Referenced by operator()().
|
private |
Data type of the arguments.
Definition at line 400 of file Function.h.
Referenced by data_type(), is_literal(), is_metadata(), and is_rawdata().