Revert "Minor modernization of DynamicAny code"
[ACE_TAO.git] / TAO / tao / Block_Flushing_Strategy.h
blobfeca0f059e3ba26994d8f307fcf5704887434552
1 // -*- C++ -*-
3 //=============================================================================
4 /**
5 * @file Block_Flushing_Strategy.h
7 * @author Carlos O'Ryan <coryan@uci.edu>
8 */
9 //=============================================================================
11 #ifndef TAO_BLOCK_FLUSHING_STRATEGY_H
12 #define TAO_BLOCK_FLUSHING_STRATEGY_H
13 #include /**/ "ace/pre.h"
15 #include "tao/Flushing_Strategy.h"
17 #if !defined (ACE_LACKS_PRAGMA_ONCE)
18 # pragma once
19 #endif /* ACE_LACKS_PRAGMA_ONCE */
21 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
23 namespace TAO
25 namespace Transport
27 class Drain_Constraints;
31 /**
32 * @class TAO_Block_Flushing_Strategy
34 * @brief Implement a flushing strategy that blocks on write to flush
36 class TAO_Block_Flushing_Strategy : public TAO_Flushing_Strategy
38 public:
39 int schedule_output (TAO_Transport *transport) override;
40 int cancel_output (TAO_Transport *transport) override;
41 int flush_message (TAO_Transport *transport,
42 TAO_Queued_Message *msg,
43 ACE_Time_Value *max_wait_time) override;
44 int flush_transport (TAO_Transport *transport
45 , ACE_Time_Value *max_wait_time) override;
47 private:
48 int call_handle_output (TAO_Transport *transport,
49 const TAO::Transport::Drain_Constraints &dc);
52 TAO_END_VERSIONED_NAMESPACE_DECL
54 #include /**/ "ace/post.h"
55 #endif /* TAO_BLOCK_FLUSHING_STRATEGY_H */