blob: 43d1198c2871fb920e03c2fdcf6106f983fe895f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
|
// $Id$
#ifndef RG_LATEBINDING_RECEIVER_IMPL_H_
#define RG_LATEBINDING_RECEIVER_IMPL_H_
#include "RG_LateBinding_ReceiverEC.h"
namespace CIAO_RG_LateBinding_Receiver_Impl
{
class RG_LateBinding_Receiver_impl;
/**
* LastSampleChecker
*/
class LastSampleChecker
: public ACE_Event_Handler
{
public:
LastSampleChecker (RG_LateBinding_Receiver_impl &callback,
const ::CORBA::UShort &iterations);
virtual ~LastSampleChecker (void);
virtual int handle_timeout (const ACE_Time_Value &tv,
const void *arg);
private:
RG_LateBinding_Receiver_impl &callback_;
const ::CORBA::UShort iterations_;
};
/**
* RG_LateBinding_Receiver_impl
*/
class RG_LateBinding_Receiver_impl
{
public:
RG_LateBinding_Receiver_impl (
::RG_LateBinding::CCM_Receiver_Context_ptr ctx,
const ::CORBA::UShort & iterations,
const ::CORBA::UShort & keys);
~RG_LateBinding_Receiver_impl (void);
void start (void);
bool check_last (void);
void start_read (void);
private:
::RG_LateBinding::CCM_Receiver_Context_var ciao_context_;
::CORBA::UShort iterations_;
::CORBA::UShort keys_;
LastSampleChecker * checker_;
void set_topic_name_reader ();
void set_topic_name_getter ();
void start_reading (void);
void start_getting (void);
void test_exception (void);
void check_samples (
const char * test,
const RG_LateBindingTestSeq& samples,
const ::CORBA::UShort& expected=0);
ACE_Reactor* reactor (void);
};
};
#endif /* RG_LATEBINDING_RECEIVER_IMPL_H_ */
|