00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027 #ifndef BSP_REQTABLE_H
00028 #define BSP_REQTABLE_H
00029
00037 #include "bsp_exptable.h"
00038 #include <stdlib.h>
00039 #include <config.h>
00040
00041 void requestTable_execute (const ExpandableTable *restrict , ExpandableTable * restrict);
00042
00048 static inline void
00049 requestTable_initialize (ExpandableTable * restrict table, const int nprocs, const int rows)
00050 {
00051 union SpecInfo info;
00052 fixedElSizeTable_initialize (table, nprocs, rows, sizeof (ReqElement), info);
00053 }
00054
00057 static inline void
00058 requestTable_destruct (ExpandableTable *restrict table)
00059 {
00060 expandableTable_destruct (table);
00061 }
00062
00067 static inline void
00068 requestTable_expand (ExpandableTable *restrict table, const int rows)
00069 {
00070 expandableTable_expand (table, rows, table->info);
00071 }
00072
00073
00074 static void
00075 newReqInfoAtPush (union SpecInfo *restrict info, int rows, int bla)
00076 {
00077 }
00078
00084 static inline void
00085 requestTable_push (ExpandableTable * restrict table, const int proc, const ReqElement element)
00086 {
00087 fixedElSizeTable_push (table, proc, &newReqInfoAtPush, (char *) &element);
00088 }
00089
00090
00091 #endif