Orocos Real-Time Toolkit  2.8.3
ServiceRequesterI.h
Go to the documentation of this file.
1 /***************************************************************************
2  tag: The SourceWorks Tue Sep 7 00:55:18 CEST 2010 ServiceRequesterI.h
3 
4  ServiceRequesterI.h - description
5  -------------------
6  begin : Tue September 07 2010
7  copyright : (C) 2010 The SourceWorks
8  email : peter@thesourceworks.com
9 
10  ***************************************************************************
11  * This library is free software; you can redistribute it and/or *
12  * modify it under the terms of the GNU General Public *
13  * License as published by the Free Software Foundation; *
14  * version 2 of the License. *
15  * *
16  * As a special exception, you may use this file as part of a free *
17  * software library without restriction. Specifically, if other files *
18  * instantiate templates or use macros or inline functions from this *
19  * file, or you compile this file and link it with other files to *
20  * produce an executable, this file does not by itself cause the *
21  * resulting executable to be covered by the GNU General Public *
22  * License. This exception does not however invalidate any other *
23  * reasons why the executable file might be covered by the GNU General *
24  * Public License. *
25  * *
26  * This library is distributed in the hope that it will be useful, *
27  * but WITHOUT ANY WARRANTY; without even the implied warranty of *
28  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
29  * Lesser General Public License for more details. *
30  * *
31  * You should have received a copy of the GNU General Public *
32  * License along with this library; if not, write to the Free Software *
33  * Foundation, Inc., 59 Temple Place, *
34  * Suite 330, Boston, MA 02111-1307 USA *
35  * *
36  ***************************************************************************/
37 
38 
39 // -*- C++ -*-
40 //
41 // $Id$
42 
43 // **** Code generated by the The ACE ORB (TAO) IDL Compiler ****
44 // TAO and the TAO IDL Compiler have been developed by:
45 // Center for Distributed Object Computing
46 // Washington University
47 // St. Louis, MO
48 // USA
49 // http://www.cs.wustl.edu/~schmidt/doc-center.html
50 // and
51 // Distributed Object Computing Laboratory
52 // University of California at Irvine
53 // Irvine, CA
54 // USA
55 // http://doc.ece.uci.edu/
56 // and
57 // Institute for Software Integrated Systems
58 // Vanderbilt University
59 // Nashville, TN
60 // USA
61 // http://www.isis.vanderbilt.edu/
62 //
63 // Information about TAO is available at:
64 // http://www.cs.wustl.edu/~schmidt/TAO.html
65 
66 // TAO_IDL - Generated from
67 // ../../../ACE_wrappers/TAO/TAO_IDL/be/be_codegen.cpp:1133
68 
69 #ifndef ORO_CORBA_SERVICEREQUESTERI_H_
70 #define ORO_CORBA_SERVICEREQUESTERI_H_
71 
72 #include "corba.h"
73 #ifdef CORBA_IS_TAO
74 #include "ServiceRequesterS.h"
75 #else
76 #include "ServiceRequesterC.h"
77 #endif
78 
79 #include "../../ServiceRequester.hpp"
80 #include <map>
81 
82 #if !defined (ACE_LACKS_PRAGMA_ONCE)
83 #pragma once
84 #endif /* ACE_LACKS_PRAGMA_ONCE */
85 
87  : public virtual POA_RTT::corba::CServiceRequester, public virtual PortableServer::RefCountServantBase
88 {
89 protected:
91  std::map<std::string, std::pair<RTT::corba::CServiceRequester_var, PortableServer::ServantBase_var> > mrequests;
92  PortableServer::POA_var mpoa;
93 public:
94  // Constructor
95  RTT_corba_CServiceRequester_i (RTT::ServiceRequester::shared_ptr service, PortableServer::POA_ptr poa);
96 
97  // Destructor
98  virtual ~RTT_corba_CServiceRequester_i (void);
99 
100  virtual RTT::corba::CServiceRequester_ptr activate_this() {
101  PortableServer::ObjectId_var oid = mpoa->activate_object(this); // ref count=2
102  //_remove_ref(); // ref count=1
103  return _this();
104  }
105 
106  virtual
107  char * getRequestName (
108  void);
109 
110  virtual
112  void);
113 
114  virtual
116  void);
117 
118  virtual
119  ::RTT::corba::CServiceRequester_ptr getRequest (
120  const char * name);
121 
122  virtual
123  ::CORBA::Boolean hasRequest (
124  const char * name);
125 
126  virtual
127  ::CORBA::Boolean connectTo (
128  ::RTT::corba::CService_ptr svc);
129 
130  virtual
131  ::CORBA::Boolean connectCallerTo (
132  const char * name,
133  ::RTT::corba::CService_ptr svc);
134 
135  virtual
136  ::CORBA::Boolean disconnectCaller (
137  const char * name);
138 
139  virtual
140  ::CORBA::Boolean callerReady (
141  const char * name);
142 
143  virtual
144  ::CORBA::Boolean ready (
145  void);
146 
147  virtual
148  void disconnect (
149  void);
150 };
151 
152 
153 #endif /* SERVICEREQUESTERI_H_ */
154 
sequence< string > COperationCallerNames
PortableServer::POA_var mpoa
virtual ::RTT::corba::CServiceRequester_ptr getRequest(const char *name)
virtual ::CORBA::Boolean ready(void)
RTT::ServiceRequester::shared_ptr mservice
boost::shared_ptr< ServiceRequester > shared_ptr
virtual ::CORBA::Boolean connectCallerTo(const char *name,::RTT::corba::CService_ptr svc)
virtual ::CORBA::Boolean callerReady(const char *name)
virtual ::CORBA::Boolean hasRequest(const char *name)
virtual ::RTT::corba::COperationCallerNames * getOperationCallerNames(void)
sequence< string > CRequestNames
virtual char * getRequestName(void)
virtual ::CORBA::Boolean disconnectCaller(const char *name)
virtual RTT::corba::CServiceRequester_ptr activate_this()
std::map< std::string, std::pair< RTT::corba::CServiceRequester_var, PortableServer::ServantBase_var > > mrequests
virtual ::RTT::corba::CRequestNames * getRequestNames(void)
virtual ::CORBA::Boolean connectTo(::RTT::corba::CService_ptr svc)
RTT_corba_CServiceRequester_i(RTT::ServiceRequester::shared_ptr service, PortableServer::POA_ptr poa)