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().