Orocos Real-Time Toolkit
2.6.0
|
00001 /*************************************************************************** 00002 tag: The SourceWorks Tue Sep 7 00:55:18 CEST 2010 TaskContextI.h 00003 00004 TaskContextI.h - description 00005 ------------------- 00006 begin : Tue September 07 2010 00007 copyright : (C) 2010 The SourceWorks 00008 email : peter@thesourceworks.com 00009 00010 *************************************************************************** 00011 * This library is free software; you can redistribute it and/or * 00012 * modify it under the terms of the GNU General Public * 00013 * License as published by the Free Software Foundation; * 00014 * version 2 of the License. * 00015 * * 00016 * As a special exception, you may use this file as part of a free * 00017 * software library without restriction. Specifically, if other files * 00018 * instantiate templates or use macros or inline functions from this * 00019 * file, or you compile this file and link it with other files to * 00020 * produce an executable, this file does not by itself cause the * 00021 * resulting executable to be covered by the GNU General Public * 00022 * License. This exception does not however invalidate any other * 00023 * reasons why the executable file might be covered by the GNU General * 00024 * Public License. * 00025 * * 00026 * This library is distributed in the hope that it will be useful, * 00027 * but WITHOUT ANY WARRANTY; without even the implied warranty of * 00028 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * 00029 * Lesser General Public License for more details. * 00030 * * 00031 * You should have received a copy of the GNU General Public * 00032 * License along with this library; if not, write to the Free Software * 00033 * Foundation, Inc., 59 Temple Place, * 00034 * Suite 330, Boston, MA 02111-1307 USA * 00035 * * 00036 ***************************************************************************/ 00037 00038 00039 // -*- C++ -*- 00040 // 00041 // $Id$ 00042 00043 // **** Code generated by the The ACE ORB (TAO) IDL Compiler **** 00044 // TAO and the TAO IDL Compiler have been developed by: 00045 // Center for Distributed Object Computing 00046 // Washington University 00047 // St. Louis, MO 00048 // USA 00049 // http://www.cs.wustl.edu/~schmidt/doc-center.html 00050 // and 00051 // Distributed Object Computing Laboratory 00052 // University of California at Irvine 00053 // Irvine, CA 00054 // USA 00055 // http://doc.ece.uci.edu/ 00056 // and 00057 // Institute for Software Integrated Systems 00058 // Vanderbilt University 00059 // Nashville, TN 00060 // USA 00061 // http://www.isis.vanderbilt.edu/ 00062 // 00063 // Information about TAO is available at: 00064 // http://www.cs.wustl.edu/~schmidt/TAO.html 00065 00066 // TAO_IDL - Generated from 00067 // ../../../ACE_wrappers/TAO/TAO_IDL/be/be_codegen.cpp:1133 00068 00069 #ifndef ORO_CORBA_TASKCONTEXTI_H_ 00070 #define ORO_CORBA_TASKCONTEXTI_H_ 00071 00072 #include "corba.h" 00073 #ifdef CORBA_IS_TAO 00074 #include "TaskContextS.h" 00075 #else 00076 #include "TaskContextC.h" 00077 #endif 00078 00079 #include "ServiceC.h" 00080 #include "ServiceRequesterC.h" 00081 #include "DataFlowC.h" 00082 #include "../../TaskContext.hpp" 00083 00084 #if !defined (ACE_LACKS_PRAGMA_ONCE) 00085 #pragma once 00086 #endif /* ACE_LACKS_PRAGMA_ONCE */ 00087 00088 class RTT_corba_CTaskContext_i 00089 : public virtual POA_RTT::corba::CTaskContext, public virtual PortableServer::RefCountServantBase 00090 { 00091 protected: 00092 PortableServer::POA_var mpoa; 00093 RTT::TaskContext* mtask; 00094 00095 RTT::corba::CService_var mService; 00096 RTT::corba::CServiceRequester_var mRequest; 00097 00098 PortableServer::ServantBase_var mRequest_i; 00099 PortableServer::ServantBase_var mService_i; 00100 00101 public: 00102 // Constructor 00103 RTT_corba_CTaskContext_i (RTT::TaskContext* orig, PortableServer::POA_ptr the_poa); 00104 00105 // Destructor 00106 virtual ~RTT_corba_CTaskContext_i (void); 00107 00108 virtual RTT::corba::CTaskContext_ptr activate_this() { 00109 PortableServer::ObjectId_var oid = mpoa->activate_object(this); // ref count=2 00110 //_remove_ref(); // ref count=1 00111 return _this(); 00112 } 00113 00114 void shutdownCORBA(); 00115 00116 virtual 00117 char * getName ( 00118 void); 00119 00120 virtual 00121 char * getDescription ( 00122 void); 00123 00124 virtual 00125 ::RTT::corba::CTaskState getTaskState ( 00126 void); 00127 00128 virtual 00129 ::CORBA::Boolean configure ( 00130 void); 00131 00132 virtual 00133 ::CORBA::Boolean start ( 00134 void); 00135 00136 virtual 00137 ::CORBA::Boolean activate ( 00138 void); 00139 00140 virtual 00141 ::CORBA::Boolean stop ( 00142 void); 00143 00144 virtual 00145 ::CORBA::Boolean cleanup ( 00146 void); 00147 00148 virtual 00149 ::CORBA::Boolean resetException( 00150 void); 00151 00152 virtual 00153 ::CORBA::Boolean isActive ( 00154 void); 00155 00156 virtual 00157 ::CORBA::Boolean isRunning ( 00158 void); 00159 00160 virtual 00161 ::CORBA::Boolean isConfigured ( 00162 void); 00163 00164 virtual 00165 ::CORBA::Boolean inFatalError ( 00166 void); 00167 00168 virtual 00169 ::CORBA::Boolean inRunTimeError ( 00170 void); 00171 00172 virtual 00173 ::RTT::corba::CDataFlowInterface_ptr ports ( 00174 void); 00175 00176 virtual 00177 ::RTT::corba::CService_ptr getProvider ( 00178 const char * service_name); 00179 00180 virtual 00181 ::RTT::corba::CServiceRequester_ptr getRequester ( 00182 const char * service_name); 00183 00184 virtual 00185 ::RTT::corba::CTaskContext::CPeerNames * getPeerList ( 00186 void); 00187 00188 virtual 00189 ::RTT::corba::CTaskContext_ptr getPeer ( 00190 const char * name); 00191 00192 virtual 00193 ::CORBA::Boolean hasPeer ( 00194 const char * name); 00195 00196 virtual 00197 ::CORBA::Boolean addPeer ( 00198 ::RTT::corba::CTaskContext_ptr p, 00199 const char * alias); 00200 00201 virtual 00202 ::CORBA::Boolean removePeer ( 00203 const char * name); 00204 00205 virtual 00206 ::CORBA::Boolean connectPeers ( 00207 ::RTT::corba::CTaskContext_ptr p); 00208 00209 virtual 00210 ::CORBA::Boolean disconnectPeers ( 00211 const char * name); 00212 00213 virtual 00214 ::CORBA::Boolean connectPorts ( 00215 ::RTT::corba::CTaskContext_ptr p); 00216 00217 virtual 00218 ::CORBA::Boolean connectServices ( 00219 ::RTT::corba::CTaskContext_ptr p); 00220 }; 00221 00222 00223 #endif /* TASKCONTEXTI_H_ */ 00224