~ubuntu-branches/ubuntu/breezy/ace/breezy

« back to all changes in this revision

Viewing changes to TAO/orbsvcs/tests/Notify/lib/Consumer_T.h

  • Committer: Bazaar Package Importer
  • Author(s): Adam Conrad, Benjamin Montgomery, Adam Conrad
  • Date: 2005-09-18 22:51:38 UTC
  • mfrom: (1.2.1 upstream) (2.1.1 sarge) (0.1.2 woody)
  • Revision ID: james.westby@ubuntu.com-20050918225138-seav22q6fyylb536
Tags: 5.4.7-3ubuntu1
[ Benjamin Montgomery ]
* Added a patch for amd64 and powerpc that disables the compiler
  option -fvisibility-inlines-hidden

[ Adam Conrad ]
* Added DPATCH_OPTION_CPP=1 to debian/patches/00options to make
  Benjamin's above changes work correctly with dpatch.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/* -*- C++ -*- */
2
 
/**
3
 
 *  @file Consumer_T.h
4
 
 *
5
 
 *  Consumer_T.h,v 1.6 2003/12/31 15:12:28 jwillemsen Exp
6
 
 *
7
 
 *  @author Pradeep Gore <pradeep@oomworks.com>
8
 
 *
9
 
 *
10
 
 */
11
 
 
12
 
#ifndef TAO_Notify_Tests_CONSUMER_T_H
13
 
#define TAO_Notify_Tests_CONSUMER_T_H
14
 
#include /**/ "ace/pre.h"
15
 
 
16
 
#if !defined (ACE_LACKS_PRAGMA_ONCE)
17
 
# pragma once
18
 
#endif /* ACE_LACKS_PRAGMA_ONCE */
19
 
 
20
 
#include "Peer_T.h"
21
 
 
22
 
class TAO_Notify_Tests_ConsumerAdmin_Traits
23
 
{
24
 
 public:
25
 
  typedef CosNotifyChannelAdmin::ConsumerAdmin INTERFACE;
26
 
  typedef CosNotifyChannelAdmin::ConsumerAdmin_ptr PTR;
27
 
  typedef CosNotifyChannelAdmin::ConsumerAdmin_var VAR;
28
 
};
29
 
 
30
 
class TAO_Notify_Tests_ConsumerAdmin_Ext_Traits
31
 
{
32
 
 public:
33
 
  typedef NotifyExt::ConsumerAdmin INTERFACE;
34
 
  typedef NotifyExt::ConsumerAdmin_ptr PTR;
35
 
  typedef NotifyExt::ConsumerAdmin_var VAR;
36
 
};
37
 
 
38
 
/**
39
 
 * @class TAO_Notify_Tests_Consumer_T
40
 
 *
41
 
 * @brief Base template to implement Consumers.
42
 
 *
43
 
 */
44
 
template <class Consumer_Traits>
45
 
class TAO_Notify_Tests_Consumer_T : public TAO_Notify_Tests_Peer_T <Consumer_Traits>
46
 
{
47
 
  typedef ACE_TYPENAME Consumer_Traits::Admin_Traits Admin_Traits;
48
 
  typedef ACE_TYPENAME Consumer_Traits::Admin_Ext_Traits Admin_Ext_Traits;
49
 
  typedef ACE_TYPENAME Consumer_Traits::Proxy_Traits Proxy_Traits;
50
 
 
51
 
  typedef ACE_TYPENAME Proxy_Traits::INTERFACE Proxy_Traits_INTERFACE;
52
 
  typedef ACE_TYPENAME Proxy_Traits::PTR Proxy_Traits_PTR;
53
 
  typedef ACE_TYPENAME Admin_Traits::PTR Admin_Traits_PTR;
54
 
  typedef ACE_TYPENAME Admin_Ext_Traits::PTR Admin_Ext_Traits_PTR;
55
 
 
56
 
public:
57
 
  /// Constuctor
58
 
  TAO_Notify_Tests_Consumer_T (void);
59
 
 
60
 
  /// Destructor
61
 
  ~TAO_Notify_Tests_Consumer_T ();
62
 
 
63
 
  /// For backward compatibility. use <get_proxy> instead.
64
 
  Proxy_Traits_PTR get_proxy_supplier (void);
65
 
 
66
 
  /// Send subscription_change
67
 
  virtual void subscription_change (CosNotification::EventTypeSeq &added, CosNotification::EventTypeSeq& removed ACE_ENV_ARG_DECL);
68
 
 
69
 
protected:
70
 
  /// Obtain Proxy.
71
 
  virtual Proxy_Traits_PTR obtain_proxy (Admin_Traits_PTR admin_ptr ACE_ENV_ARG_DECL);
72
 
 
73
 
  /// Obtain Proxy with QoS.
74
 
  virtual Proxy_Traits_PTR obtain_proxy (Admin_Ext_Traits_PTR admin_ptr
75
 
                                         , CosNotification::QoSProperties& qos
76
 
                                          ACE_ENV_ARG_DECL);
77
 
 
78
 
  // = NotifyPublish method
79
 
  virtual void offer_change (const CosNotification::EventTypeSeq & added,
80
 
        const CosNotification::EventTypeSeq & removed
81
 
        ACE_ENV_ARG_DECL
82
 
      )
83
 
      ACE_THROW_SPEC ((
84
 
        CORBA::SystemException,
85
 
        CosNotifyComm::InvalidEventType
86
 
      ));
87
 
};
88
 
 
89
 
#if defined (__ACE_INLINE__)
90
 
#include "Consumer_T.inl"
91
 
#endif /* __ACE_INLINE__ */
92
 
 
93
 
#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
94
 
#include "Consumer_T.cpp"
95
 
#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
96
 
 
97
 
#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
98
 
#pragma implementation ("Consumer_T.cpp")
99
 
#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
100
 
 
101
 
#include /**/ "ace/post.h"
102
 
#endif /* TAO_Notify_Tests_CONSUMER_T_H */