1# This file was originally derived from a list of the C++ bindings 2# by using the perl script cxxtodecl. However, that script cannot 3# handle every feature of the bindings, so the final changes 4# were made by hand. 5<mpi2> 6-Alloc_mem void* ( ,in:constref:Info ,return) 7dtype-Create_darray Datatype (, , ,in:const ,in:const ,in:const ,in:const , , ,return) const 8dtype-Create_hindexed Datatype (,in:const ,in:const , ,return) const 9dtype-Create_hvector Datatype (, , , ,return) const 10dtype-Create_indexed_block Datatype (, , in:const,,return) const 11dtype-Create_struct static Datatype ( ,in:const ,in:const ,in:const ,return) 12dtype-Create_subarray Datatype (, ,in:const ,in:const ,in:const , ,return) const 13dtype-Get_extent void (, , ) const 14dtype-Get_true_extent void (, , ) const 15dtype-Pack_external void (,in:const ,in:const , , , , ) const 16dtype-Pack_external_size Aint (,in:const , ,return) const 17dtype-Create_resized Datatype (,in:const ,in:const ,return) const 18dtype-Unpack_external void (,in:const ,in:const , , , , ) const 19# Errhandler creation requires special routines 20#file-Create_errhandler static Errhandler (File::Errhandler_fn* function ,return) 21file-Get_errhandler Errhandler (,return) const 22file-Set_errhandler void (,in:constref:Errhandler ) 23-Free_mem void ( ) 24-Get_address Aint ( ,return) 25info-Create static Info (return) 26info-Delete void (,in:const ) 27info-Dup Info (,return) const 28info-Free void () 29info-Get bool (,in:const , , ,return ) const 30info-Get_nkeys int (,return) const 31info-Get_nthkey void (, , ) const 32info-Get_valuelen bool (,in:const ,in:refint,return ) const 33info-Set void (,in:const ,in:const ) 34-Is_finalized bool (return) 35req-Get_status bool (,return ) const 36# Errhandler creation requires special routines 37#win-Create_errhandler static Errhandler (Win::Errhandler_fn* function ,return) 38win-Get_errhandler Errhandler (,return) const 39win-Set_errhandler void (,in:constref:Errhandler ) 40-Close_port void (in:const ) 41comm-Disconnect void () 42comm-Get_parent static Intercomm (return) 43comm-Join static Intercomm (in:const ,return) 44intra-Accept Intercomm (in:const ,in:constref:Info , ,,return) const 45intra-Connect Intercomm (in:const ,in:constref:Info , ,,return) const 46-Lookup_name void (in:const ,in:constref:Info , ) 47-Open_port void (in:constref:Info , ) 48-Publish_name void (in:const ,in:constref:Info ,in:const ) 49-Unpublish_name void (in:const ,in:constref:Info ,in:const ) 50win-Accumulate void (in:const , ,in:constref:Datatype , , , ,in:constref:Datatype ,in:constref:Op, ) const 51win-Complete void () const 52win-Create static Win (in:const , , ,in:constref:Info ,in:constref:Intracomm ,return) 53win-Fence void (, ) const 54win-Free void () 55win-Get void ( , ,in:constref:Datatype , , , ,in:constref:Datatype, ) const 56win-Get_group Group (,return) const 57win-Lock void (, , , ) const 58win-Post void (in:constref:Group ,, ) const 59win-Put void (in:const , ,in:constref:Datatype , , , ,in:constref:Datatype, ) const 60win-Start void (in:constref:Group ,, ) const 61win-Test bool (,return) const 62win-Unlock void (, ) const 63win-Wait void () const 64comm-Allgather void (in:const , ,in:constref:Datatype , , ,in:constref:Datatype, ) const 65comm-Allgatherv void (in:const , ,in:constref:Datatype , ,in:const ,in:const ,in:constref:Datatype, ) const 66comm-Allreduce void (in:const , , ,in:constref:Datatype ,in:constref:Op, ) const 67comm-Alltoall void (in:const , ,in:constref:Datatype , , ,in:constref:Datatype, ) const 68comm-Alltoallv void (in:const ,in:const ,in:const ,in:constref:Datatype , ,in:const ,in:const ,in:constref:Datatype, ) const 69comm-Alltoallw void (in:const ,in:const ,in:const ,in:dtypearray:SIZE , ,in:const ,in:const ,in:dtypearray:SIZE, ) const 70comm-Barrier void () const 71comm-Bcast void (, ,in:constref:Datatype , , ) const 72comm-Gather void (in:const , ,in:constref:Datatype , , ,in:constref:Datatype , ) const 73comm-Gatherv void (in:const , ,in:constref:Datatype , ,in:const ,in:const ,in:constref:Datatype , ) const 74comm-Reduce void (in:const , , ,in:constref:Datatype ,in:constref:Op , ) const 75comm-Reduce_scatter void (in:const , , ,in:constref:Datatype ,in:constref:Op, ) const 76comm-Reduce_scatter_block void (in:const , , ,in:constref:Datatype ,in:constref:Op, ) const 77comm-Scatter void (in:const , ,in:constref:Datatype , , ,in:constref:Datatype , ) const 78comm-Scatterv void (in:const ,in:const ,in:const ,in:constref:Datatype , , ,in:constref:Datatype , ) const 79# FIXME: this entry confuses buildiface, which groups it with 80# inter-Create_intercomm (because of the class-Create -> Create_class rule 81# This needs a fix in GetCArgs, which finds the routine that matches 82# a name. 83#inter-Create Intercomm (,in:constref:Group ,return) const 84inter-Split Intercomm (, , ,return) const 85intra-Exscan void (in:const , , ,in:constref:Datatype ,in:constref:Op, ) const 86-Add_error_class int (return) 87-Add_error_code int ( ,return) 88-Add_error_string void ( ,in:const ) 89comm-Call_errhandler void (, ) const 90#comm-Create_keyval static int (Comm::Copy_attr_function* comm_copy_attr_fn ,Comm::Delete_attr_function* comm_delete_attr_fn , ,return) 91comm-Delete_attr void (, ) 92comm-Free_keyval static void (in:refint ) 93comm-Get_attr bool (, , ,return ) const 94comm-Get_name void (, ,in:refint ) const 95comm-Set_attr void (, ,in:const ) 96comm-Set_name void (,in:const ) 97#dtype-Create_keyval static int (Datatype::Copy_attr_function* type_copy_attr_fn ,Datatype::Delete_attr_function* type_delete_attr_fn , ,return) 98dtype-Delete_attr void (, ) 99dtype-Dup Datatype (,return) const 100dtype-Free_keyval static void (in:refint ) 101dtype-Get_attr bool (, , ,return ) const 102dtype-Get_contents void (, , , , , ,out:dtypearray:4 ) const 103dtype-Get_envelope void (,in:refint ,in:refint ,in:refint ,in:refint ) const 104dtype-Get_name void (, ,in:refint ) const 105dtype-Set_attr void (, ,in:const ) 106dtype-Set_name void (,in:const ) 107file-Call_errhandler void (, ) const 108greq-Complete void () 109# Grequest start requires special code 110#greq-Start static Grequest (in:const-Grequest::Query_function query_fn ,in:const-Grequest::Free_function free_fn ,in:const-Grequest::Cancel_function cancel_fn , ,return) 111-Is_thread_main bool (return) 112-Query_thread int (return) 113st-Set_cancelled void (,in:bool ) 114st-Set_elements void (,in:constref:Datatype , ) 115win-Call_errhandler void (, ) const 116#win-Create_keyval static int (Win::Copy_attr_function* win_copy_attr_fn ,Win::Delete_attr_function* win_delete_attr_fn , ,return) 117win-Delete_attr void (, ) 118win-Free_keyval static void (in:refint ) 119win-Get_attr bool (, , ,return ) const 120win-Get_name void (, ,in:refint ) const 121win-Set_attr void (, ,in:const ) 122win-Set_name void (,in:const ) 123file-Close void () 124file-Delete static void (in:const ,in:constref:Info ) 125file-Get_amode int (,return) const 126file-Get_atomicity bool (,return) const 127file-Get_byte_offset Offset (,in:const ,return) const 128file-Get_group Group (,return) const 129file-Get_info Info (,return) const 130file-Get_position Offset (,return) const 131file-Get_position_shared Offset (,return) const 132file-Get_size Offset (,return) const 133file-Get_type_extent Aint (,in:constref:Datatype ,return) const 134file-Get_view void (, ,out:reftype:Datatype ,out:reftype:Datatype , ) const 135file-Iread Request (, , ,in:constref:Datatype ,return) 136file-Iread_at Request (, , , ,in:constref:Datatype ,return) 137file-Iread_shared Request (, , ,in:constref:Datatype ,return) 138file-Iwrite Request (,in:const , ,in:constref:Datatype ,return) 139file-Iwrite_at Request (, ,in:const , ,in:constref:Datatype ,return) 140file-Iwrite_shared Request (,in:const , ,in:constref:Datatype ,return) 141file-Open static File (in:constref:Intracomm ,in:const , ,in:constref:Info ,return) 142file-Preallocate void (, ) 143file-Read void (, , ,in:constref:Datatype , ) 144file-Read_all void (, , ,in:constref:Datatype , ) 145file-Read_all_begin void (, , ,in:constref:Datatype ) 146file-Read_all_end void (, , ) 147file-Read_at void (, , , ,in:constref:Datatype , ) 148file-Read_at_all void (, , , ,in:constref:Datatype , ) 149file-Read_at_all_begin void (, , , ,in:constref:Datatype ) 150file-Read_at_all_end void (, , ) 151file-Read_ordered void (, , ,in:constref:Datatype , ) 152file-Read_ordered_begin void (, , ,in:constref:Datatype ) 153file-Read_ordered_end void (, , ) 154file-Read_shared void (, , ,in:constref:Datatype , ) 155file-Seek void (, , ) 156file-Seek_shared void (, , ) 157file-Set_atomicity void (,in:bool ) 158file-Set_info void (,in:constref:Info ) 159file-Set_size void (, ) 160file-Set_view void (, ,in:constref:Datatype ,in:constref:Datatype ,in:const ,in:constref:Info ) 161file-Sync void () 162file-Write void (,in:const , ,in:constref:Datatype , ) 163file-Write_all void (,in:const , ,in:constref:Datatype , ) 164file-Write_all_begin void (,in:const , ,in:constref:Datatype ) 165file-Write_all_end void (,in:const , ) 166file-Write_at void (, ,in:const , ,in:constref:Datatype , ) 167file-Write_at_all void (, ,in:const , ,in:constref:Datatype , ) 168file-Write_at_all_begin void (, ,in:const , ,in:constref:Datatype ) 169file-Write_at_all_end void (,in:const , ) 170file-Write_ordered void (,in:const , ,in:constref:Datatype , ) 171file-Write_ordered_begin void (,in:const , ,in:constref:Datatype ) 172file-Write_ordered_end void (,in:const , ) 173file-Write_shared void (,in:const , ,in:constref:Datatype , ) 174# Datarep not yet available 175#-Register_datarep void (in:const ,Datarep_conversion_function* read_conversion_fn ,Datarep_conversion_function* write_conversion_fn ,Datarep_extent_function* dtype_file_extent_fn , ) 176# These are part of the C++ interface but only make sense 177# if Fortran is available. 178dtype-Create_f90_complex static Datatype ( , ,return) 179dtype-Create_f90_integer static Datatype ( ,return) 180dtype-Create_f90_real static Datatype ( , ,return) 181dtype-Match_size static Datatype ( , ,return) 182<mpi1> 183# Errhandler creation requires special routines 184#comm-Create_errhandler static Errhandler (Comm::Errhandler_fn* function ,return) 185# Errhandlers are really in MPI2, but replace routines defined in mpi1 186comm-Get_errhandler Errhandler (,return) const 187comm-Set_errhandler void (,in:constref:Errhandler ) 188# 189comm-Send void (in:const , ,in:constref:Datatype , , , ) const 190comm-Recv void ( , ,in:constref:Datatype , , , , ) const 191st-Get_count int (,in:constref:Datatype ,return) const 192comm-Bsend void (in:const , ,in:constref:Datatype , , , ) const 193comm-Ssend void (in:const , ,in:constref:Datatype , , , ) const 194comm-Rsend void (in:const , ,in:constref:Datatype , , , ) const 195-Attach_buffer void ( , ) 196-Detach_buffer int ( out:ref:void* ,return) 197comm-Isend Request (in:const , ,in:constref:Datatype , , , ,return) const 198comm-Ibsend Request (in:const , ,in:constref:Datatype , , , ,return) const 199comm-Issend Request (in:const , ,in:constref:Datatype , , , ,return) const 200comm-Irsend Request (in:const , ,in:constref:Datatype , , , ,return) const 201comm-Irecv Request ( , ,in:constref:Datatype , , , ,return) const 202req-Wait void (, ) 203req-Test bool (,return ) 204req-Free void () 205req-Waitany static int ( ,in:reqarray:1 ,return,) 206req-Testany static bool ( ,in:reqarray:1 ,in:refint ,return, ) 207req-Waitall static void ( ,in:reqarray:1 ,out:statusarray:1 ) 208req-Testall static bool ( ,in:reqarray:1 , return, out:statusarray:1 ) 209req-Waitsome static int ( ,in:reqarray:1 , return,, out:statusarray:1) 210req-Testsome static int ( ,in:reqarray:1 ,return,, out:statusarray:1) 211comm-Iprobe bool (, , ,return, ) const 212comm-Probe void (, , , ) const 213req-Cancel void () const 214st-Is_cancelled bool (,return) const 215comm-Send_init Prequest (in:const , ,in:constref:Datatype , , , ,return) const 216comm-Bsend_init Prequest (in:const , ,in:constref:Datatype , , , ,return) const 217comm-Ssend_init Prequest (in:const , ,in:constref:Datatype , , , ,return) const 218comm-Rsend_init Prequest (in:const , ,in:constref:Datatype , , , ,return) const 219comm-Recv_init Prequest ( , ,in:constref:Datatype , , , ,return) const 220preq-Start void () 221preq-Startall static void ( , in:preqarray:1 ) 222comm-Sendrecv void (in:const , ,in:constref:Datatype , , , , ,in:constref:Datatype , , , , ) const 223comm-Sendrecv_replace void (, ,in:constref:Datatype , , , , , , ) const 224dtype-Create_contiguous Datatype (, ,return) const 225dtype-Create_vector Datatype (, , , ,return) const 226dtype-Create_indexed Datatype (,in:const ,in:const ,,return) const 227dtype-Get_size int (,return) const 228dtype-Commit void () 229dtype-Free void () 230st-Get_elements int (,in:constref:Datatype ,return) const 231dtype-Pack void (in:const, , , , , in:refint ,in:constref:Comm ) const 232# Note that unpack doesn't follow the standard rules for matching 233# arguments to the C routine. 234#dtype-Unpack void (in:const, ,in:refint , , , ,in:constref:Comm ) const 235dtype-Pack_size int (, ,in:constref:Comm ,return) const 236#intra-Barrier void () const 237#intra-Bcast void (, ,in:constref:Datatype , ,) const 238#intra-Gather void (in:const , ,in:constref:Datatype , , ,in:constref:Datatype , ) const 239#intra-Gatherv void (in:const , ,in:constref:Datatype , ,in:const ,in:const ,in:constref:Datatype , ) const 240#intra-Scatter void (in:const , ,in:constref:Datatype , , ,in:constref:Datatype , ) const 241#intra-Scatterv void (in:const ,in:const ,in:const ,in:constref:Datatype , , ,in:constref:Datatype , ) const 242#intra-Allgather void (in:const , ,in:constref:Datatype , , ,in:constref:Datatype ) const 243#intra-Allgatherv void (in:const , ,in:constref:Datatype , ,in:const ,in:const ,in:constref:Datatype ) const 244#intra-Alltoall void (in:const , ,in:constref:Datatype , , ,in:constref:Datatype ) const 245#intra-Alltoallv void (in:const ,in:const ,in:const ,in:constref:Datatype , ,in:const ,in:const ,in:constref:Datatype ) const 246#intra-Reduce void (in:const , , ,in:constref:Datatype ,in:constref:Op , ) const 247# op-Init requires special handling 248#op-Init void (,User_function* function ,in:bool ) 249op-Free void () 250#intra-Allreduce void (in:const , , ,in:constref:Datatype ,in:constref:Op ) const 251#intra-Reduce_scatter void (in:const , , ,in:constref:Datatype ,in:constref:Op ) const 252intra-Scan void (in:const , , ,in:constref:Datatype ,in:constref:Op ) const 253group-Get_size int (,return) const 254group-Get_rank int (,return) const 255group-Translate_ranks static (in:constref:Group , ,in:const ,in:constref:Group , ,return) 256group-Compare static int (in:constref:Group ,in:constref:Group ,return) 257comm-Get_group Group (,return) const 258group-Union static Group (in:constref:Group ,in:constref:Group ,return) 259group-Intersect static Group (in:constref:Group ,in:constref:Group ,return) 260group-Difference static Group (in:constref:Group ,in:constref:Group ,return) 261group-Incl Group (, ,in:const ,return) const 262group-Excl Group (, ,in:const ,return) const 263group-Range_incl Group (, ,in:const ,return) const 264group-Range_excl Group (, ,in:const ,return) const 265group-Free void () 266comm-Get_size int (,return) const 267comm-Get_rank int (,return) const 268comm-Compare static int (in:constref:Comm ,in:constref:Comm ,return) 269intra-Dup Intracomm (,return) const 270inter-Dup Intercomm (,return) const 271cart-Dup Cartcomm (,return) const 272graph-Dup Graphcomm (,return) const 273comm-Clone (,return) 274intra-Clone (,return) const 275inter-Clone (,return) const 276cart-Clone (,return) const 277graph-Clone (,return) const 278intra-Create Intracomm (,in:constref:Group ,return) const 279intra-Split Intracomm (, , ,return) const 280comm-Free void () 281comm-Is_inter bool (,return) const 282inter-Get_remote_size int (,return) const 283inter-Get_remote_group Group (,return) const 284intra-Create_intercomm Intercomm (, ,in:constref:Comm , , ,return) const 285inter-Merge Intracomm (,in:bool ,return) const 286intra-Create_cart Cartcomm (, ,in:const ,in:boolarray:2 ,in:bool ,return) const 287-Compute_dims void ( , , ) 288intra-Create_graph Graphcomm (, ,in:const ,in:const ,in:bool ,return) const 289comm-Get_topology int (,return) const 290graph-Get_dims void (, , ) const 291graph-Get_topo void (, , , , ) const 292cart-Get_dim int (,return) const 293cart-Get_topo void (, , ,out:boolarray:2 , ) const 294cart-Get_cart_rank int (,in:const ,return) const 295cart-Get_coords void (, , , ) const 296graph-Get_neighbors_count int (, ,return) const 297graph-Get_neighbors void (, , , ) const 298cart-Shift void (, , ,in:refint ,in:refint ) const 299cart-Sub Cartcomm ( ,in:boolarray:-10 ,return) const 300cart-Map int (, ,in:const ,in:boolarray:2 ,return) const 301graph-Map int (, ,in:const ,in:const ,return) const 302-Get_processor_name void ( ,in:refint ) 303errh-Free void () 304-Get_error_string void ( , ,in:refint ) 305-Get_error_class int ( ,return) 306# Wtime and tick are special 307#-Wtime double () 308#-Wtick double () 309-Finalize void () 310-Is_initialized bool (return) 311comm-Abort void ( ) const 312-Pcontrol void (in:const ,... ) 313# Status methods don't require routines and are handled specially 314#st-Get_source int (,return) const 315#st-Set_source void (, ) 316#st-Get_tag int (,return) const 317#st-Set_tag void (, ) 318#st-Get_error int (,return) const 319#st-Set_error void (, ) 320-Get_version void (in:refint ,in:refint ) 321