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

« back to all changes in this revision

Viewing changes to TAO/orbsvcs/orbsvcs/Notify/ProxyConsumer.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 ProxyConsumer.h
4
 
 *
5
 
 *  ProxyConsumer.h,v 1.9 2003/10/28 18:34:24 bala Exp
6
 
 *
7
 
 *  @author Pradeep Gore <pradeep@oomworks.com>
8
 
 *
9
 
 *
10
 
 */
11
 
 
12
 
#ifndef TAO_Notify_PROXYCONSUMER_H
13
 
#define TAO_Notify_PROXYCONSUMER_H
14
 
 
15
 
#include /**/ "ace/pre.h"
16
 
 
17
 
#include "notify_export.h"
18
 
 
19
 
#include "ace/Auto_Ptr.h"
20
 
 
21
 
#if !defined (ACE_LACKS_PRAGMA_ONCE)
22
 
# pragma once
23
 
#endif /* ACE_LACKS_PRAGMA_ONCE */
24
 
 
25
 
#include "orbsvcs/CosEventChannelAdminC.h"
26
 
 
27
 
#include "Refcountable_Guard_T.h"
28
 
#include "Event.h"
29
 
#include "Proxy.h"
30
 
 
31
 
 
32
 
class TAO_Notify_SupplierAdmin;
33
 
class TAO_Notify_Supplier;
34
 
 
35
 
/**
36
 
 * @class TAO_Notify_ProxyConsumer
37
 
 *
38
 
 * @brief Base class for all types of ProxyConsumer implementations.
39
 
 *
40
 
 */
41
 
class TAO_Notify_Export TAO_Notify_ProxyConsumer : public virtual TAO_Notify_Proxy
42
 
{
43
 
public:
44
 
  /// Constuctor
45
 
  TAO_Notify_ProxyConsumer (void);
46
 
 
47
 
  /// Destructor
48
 
  ~TAO_Notify_ProxyConsumer ();
49
 
 
50
 
  /// Init
51
 
  void init (TAO_Notify_SupplierAdmin* supplier_admin ACE_ENV_ARG_DECL);
52
 
 
53
 
  /// Connect
54
 
  void connect (TAO_Notify_Supplier* supplier ACE_ENV_ARG_DECL)
55
 
    ACE_THROW_SPEC ((
56
 
                     CORBA::SystemException
57
 
                     , CosEventChannelAdmin::AlreadyConnected
58
 
                     ));
59
 
 
60
 
  /// Disconnect
61
 
  void disconnect (ACE_ENV_SINGLE_ARG_DECL);
62
 
 
63
 
  /// Shutdown  (TAO_Notify_Container_T method)
64
 
  virtual int shutdown (ACE_ENV_SINGLE_ARG_DECL);
65
 
 
66
 
  /// Destroy this object.
67
 
  virtual void destroy (ACE_ENV_SINGLE_ARG_DECL);
68
 
 
69
 
  /// Access our Peer.
70
 
  virtual TAO_Notify_Peer* peer (void);
71
 
 
72
 
  /// Access the Supplier
73
 
  TAO_Notify_Supplier* supplier (void);
74
 
 
75
 
  /// Return 1 if connected
76
 
  int is_connected (void);
77
 
 
78
 
  /// The SA parent.
79
 
  TAO_Notify_SupplierAdmin* supplier_admin (void);
80
 
 
81
 
protected:
82
 
  ///= Data Members.
83
 
  /// The SA parent.
84
 
  TAO_Notify_SupplierAdmin* supplier_admin_;
85
 
 
86
 
  /// The Supplier that we're connect to.
87
 
  TAO_Notify_Supplier* supplier_;
88
 
};
89
 
 
90
 
typedef TAO_Notify_Refcountable_Guard_T<TAO_Notify_ProxyConsumer> TAO_Notify_ProxyConsumer_Guard;
91
 
 
92
 
#if defined (__ACE_INLINE__)
93
 
#include "ProxyConsumer.inl"
94
 
#endif /* __ACE_INLINE__ */
95
 
 
96
 
#include /**/ "ace/post.h"
97
 
#endif /* TAO_Notify_PROXYCONSUMER_H */