eefcfdcc192df9d357058371e5ceda5fe0228cc2
[charm.git] / src / libs / ck-libs / NDMeshStreamer / NDMeshStreamer.ci
1 module NDMeshStreamer {
2
3   template<class dtype> 
4   message MeshStreamerMessage {
5     int destinationPes[];
6     dtype data[]; 
7   };
8
9   template<class dtype> group MeshStreamerClient {
10     entry void receiveCombinedData(MeshStreamerMessage<dtype> *msg);
11   };
12
13   template<class dtype> 
14   group MeshStreamer {
15     entry MeshStreamer(int totalBufferCapacity, int numDimensions, 
16                        int dimensionSizes[numDimensions], 
17                        const CProxy_MeshStreamerClient<dtype> &clientProxy, 
18                        int yieldFlag = 0, double progressPeriodInMs = -1.0);   
19     entry void receiveAlongRoute(MeshStreamerMessage<dtype> *msg);
20     entry void flushDirect();
21     entry void finish(CkReductionMsg *msg);
22   };
23
24 };