Merge pull request #2309 from mitza-oci/warnings
[ACE_TAO.git] / ACE / apps / JAWS2 / JAWS / Data_Block.h
blobe0408b6a8bcc18053fe67d3ca4aaf949ad4fb5be
1 /* -*- c++ -*- */
2 #ifndef JAWS_DATA_BLOCK_H
3 #define JAWS_DATA_BLOCK_H
5 #include "ace/Message_Block.h"
7 #if !defined (ACE_LACKS_PRAGMA_ONCE)
8 # pragma once
9 #endif /* ACE_LACKS_PRAGMA_ONCE */
11 #include "JAWS/Export.h"
12 #include "JAWS/Pipeline.h"
14 class JAWS_IO_Handler;
15 class JAWS_Dispatch_Policy;
16 class JAWS_Data_Block;
17 class JAWS_Pipeline_Handler;
19 class JAWS_Export JAWS_Data_Block : public ACE_Message_Block
20 // = TITLE
21 // Defines the communication unit between pipeline components
23 public:
24 JAWS_Data_Block ();
25 JAWS_Data_Block (JAWS_Data_Block &db);
26 ~JAWS_Data_Block ();
28 JAWS_Pipeline_Handler *task ();
29 JAWS_IO_Handler *io_handler ();
30 JAWS_Dispatch_Policy *policy ();
31 void *payload ();
33 void task (JAWS_Pipeline_Handler *taskp);
34 void io_handler (JAWS_IO_Handler *handlerp);
35 void policy (JAWS_Dispatch_Policy *policyp);
36 void payload (void *payloadp);
38 enum { JAWS_DATA_BLOCK_SIZE = 8192 };
40 private:
41 JAWS_IO_Handler *io_handler_;
42 JAWS_Dispatch_Policy *policy_;
43 JAWS_Pipeline_Handler *task_;
45 void *payload_;
48 #endif /* !defined (JAWS_DATA_BLOCK_H) */