00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031 #ifndef _TAO_IDL__HOME_KALTAN_SRC_WWW_OROCOS_1_0_EXPORT_BUILD_OROCOS_RTT_1_8_5_BUILD_SRC_CORBA_CONTROLTASKC_H_
00032 #define _TAO_IDL__HOME_KALTAN_SRC_WWW_OROCOS_1_0_EXPORT_BUILD_OROCOS_RTT_1_8_5_BUILD_SRC_CORBA_CONTROLTASKC_H_
00033
00034
00035 #include "ace/config-all.h"
00036
00037 #if !defined (ACE_LACKS_PRAGMA_ONCE)
00038 # pragma once
00039 #endif
00040
00041
00042 #include "tao/AnyTypeCode/AnyTypeCode_methods.h"
00043 #include "tao/ORB.h"
00044 #include "tao/SystemException.h"
00045 #include "tao/Basic_Types.h"
00046 #include "tao/ORB_Constants.h"
00047 #include "tao/Object.h"
00048 #include "tao/String_Manager_T.h"
00049 #include "tao/Sequence_T.h"
00050 #include "tao/Objref_VarOut_T.h"
00051 #include "tao/Seq_Var_T.h"
00052 #include "tao/Seq_Out_T.h"
00053 #include "tao/Versioned_Namespace.h"
00054
00055 #include "OperationInterfaceC.h"
00056 #include "AttributesC.h"
00057 #include "ScriptingAccessC.h"
00058 #include "ServicesC.h"
00059 #include "DataFlowC.h"
00060
00061 #if defined (TAO_EXPORT_MACRO)
00062 #undef TAO_EXPORT_MACRO
00063 #endif
00064 #define TAO_EXPORT_MACRO
00065
00066
00067
00068 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00069
00070
00071
00072 namespace TAO
00073 {
00074 class Collocation_Proxy_Broker;
00075 template<typename T> class Narrow_Utils;
00076 }
00077 TAO_END_VERSIONED_NAMESPACE_DECL
00078
00079
00080
00081
00082
00083
00084 namespace RTT
00085 {
00086
00087
00088
00089
00090 namespace Corba
00091 {
00092
00093
00094
00095
00096 #if !defined (_RTT_CORBA_OBJECTLIST_CH_)
00097 #define _RTT_CORBA_OBJECTLIST_CH_
00098
00099 class ObjectList;
00100
00101 typedef
00102 TAO_VarSeq_Var_T<
00103 ObjectList
00104 >
00105 ObjectList_var;
00106
00107 typedef
00108 TAO_Seq_Out_T<
00109 ObjectList
00110 >
00111 ObjectList_out;
00112
00113 class ObjectList
00114 : public
00115 TAO::unbounded_basic_string_sequence<char>
00116 {
00117 public:
00118 ObjectList (void);
00119 ObjectList ( ::CORBA::ULong max);
00120 ObjectList (
00121 ::CORBA::ULong max,
00122 ::CORBA::ULong length,
00123 ::CORBA::Char ** buffer,
00124 ::CORBA::Boolean release = false
00125 );
00126 ObjectList (const ObjectList &);
00127 virtual ~ObjectList (void);
00128
00129 static void _tao_any_destructor (void *);
00130
00131 typedef ObjectList_var _var_type;
00132 typedef ObjectList_out _out_type;
00133
00134
00135 };
00136
00137 #endif
00138
00139
00140
00141
00142 extern ::CORBA::TypeCode_ptr const _tc_ObjectList;
00143
00144
00145
00146
00147 #if !defined (_RTT_CORBA_CONTROLOBJECT__VAR_OUT_CH_)
00148 #define _RTT_CORBA_CONTROLOBJECT__VAR_OUT_CH_
00149
00150 class ControlObject;
00151 typedef ControlObject *ControlObject_ptr;
00152
00153 typedef
00154 TAO_Objref_Var_T<
00155 ControlObject
00156 >
00157 ControlObject_var;
00158
00159 typedef
00160 TAO_Objref_Out_T<
00161 ControlObject
00162 >
00163 ControlObject_out;
00164
00165 #endif
00166
00167
00168
00169
00170 #if !defined (_RTT_CORBA_CONTROLOBJECT_CH_)
00171 #define _RTT_CORBA_CONTROLOBJECT_CH_
00172
00173 class ControlObject
00174 : public virtual ::CORBA::Object
00175 {
00176 public:
00177 friend class TAO::Narrow_Utils<ControlObject>;
00178 typedef ControlObject_ptr _ptr_type;
00179 typedef ControlObject_var _var_type;
00180 typedef ControlObject_out _out_type;
00181
00182
00183 static ControlObject_ptr _duplicate (ControlObject_ptr obj);
00184
00185 static void _tao_release (ControlObject_ptr obj);
00186
00187 static ControlObject_ptr _narrow (::CORBA::Object_ptr obj);
00188 static ControlObject_ptr _unchecked_narrow (::CORBA::Object_ptr obj);
00189 static ControlObject_ptr _nil (void)
00190 {
00191 return static_cast<ControlObject_ptr> (0);
00192 }
00193
00194 static void _tao_any_destructor (void *);
00195
00196
00197
00198
00199 virtual char * getName (
00200 void);
00201
00202
00203
00204
00205 virtual char * getDescription (
00206 void);
00207
00208
00209
00210
00211 virtual ::RTT::Corba::AttributeInterface_ptr attributes (
00212 void);
00213
00214
00215
00216
00217 virtual ::RTT::Corba::MethodInterface_ptr methods (
00218 void);
00219
00220
00221
00222
00223 virtual ::RTT::Corba::CommandInterface_ptr commands (
00224 void);
00225
00226
00227
00228
00229 virtual ::RTT::Corba::ObjectList * getObjectList (
00230 void);
00231
00232
00233
00234
00235 virtual ::RTT::Corba::ControlObject_ptr getObject (
00236 const char * name);
00237
00238
00239
00240
00241 virtual ::CORBA::Boolean hasObject (
00242 const char * name);
00243
00244
00245
00246
00247 virtual ::CORBA::Boolean _is_a (const char *type_id);
00248 virtual const char* _interface_repository_id (void) const;
00249 virtual ::CORBA::Boolean marshal (TAO_OutputCDR &cdr);
00250 private:
00251 TAO::Collocation_Proxy_Broker *the_TAO_ControlObject_Proxy_Broker_;
00252
00253 protected:
00254
00255 ControlObject (void);
00256
00257
00258
00259 virtual void RTT_Corba_ControlObject_setup_collocation (void);
00260
00261
00262 ControlObject (
00263 IOP::IOR *ior,
00264 TAO_ORB_Core *orb_core = 0);
00265
00266
00267 ControlObject (
00268 TAO_Stub *objref,
00269 ::CORBA::Boolean _tao_collocated = false,
00270 TAO_Abstract_ServantBase *servant = 0,
00271 TAO_ORB_Core *orb_core = 0);
00272
00273 virtual ~ControlObject (void);
00274
00275 private:
00276
00277 ControlObject (const ControlObject &);
00278
00279 void operator= (const ControlObject &);
00280 };
00281
00282 #endif
00283
00284
00285
00286
00287 extern ::CORBA::TypeCode_ptr const _tc_ControlObject;
00288
00289
00290
00291
00292 enum TaskState
00293 {
00294 Init,
00295 PreOperational,
00296 FatalError,
00297 Stopped,
00298 Active,
00299 Running,
00300 RunTimeWarning,
00301 RunTimeError
00302 };
00303
00304 typedef TaskState &TaskState_out;
00305
00306
00307
00308
00309 extern ::CORBA::TypeCode_ptr const _tc_TaskState;
00310
00311
00312
00313
00314 #if !defined (_RTT_CORBA_CONTROLTASK__VAR_OUT_CH_)
00315 #define _RTT_CORBA_CONTROLTASK__VAR_OUT_CH_
00316
00317 class ControlTask;
00318 typedef ControlTask *ControlTask_ptr;
00319
00320 typedef
00321 TAO_Objref_Var_T<
00322 ControlTask
00323 >
00324 ControlTask_var;
00325
00326 typedef
00327 TAO_Objref_Out_T<
00328 ControlTask
00329 >
00330 ControlTask_out;
00331
00332 #endif
00333
00334
00335
00336
00337 #if !defined (_RTT_CORBA_CONTROLTASK_CH_)
00338 #define _RTT_CORBA_CONTROLTASK_CH_
00339
00340 class ControlTask
00341 : public virtual ::RTT::Corba::ControlObject
00342 {
00343 public:
00344 friend class TAO::Narrow_Utils<ControlTask>;
00345 typedef ControlTask_ptr _ptr_type;
00346 typedef ControlTask_var _var_type;
00347 typedef ControlTask_out _out_type;
00348
00349
00350 static ControlTask_ptr _duplicate (ControlTask_ptr obj);
00351
00352 static void _tao_release (ControlTask_ptr obj);
00353
00354 static ControlTask_ptr _narrow (::CORBA::Object_ptr obj);
00355 static ControlTask_ptr _unchecked_narrow (::CORBA::Object_ptr obj);
00356 static ControlTask_ptr _nil (void)
00357 {
00358 return static_cast<ControlTask_ptr> (0);
00359 }
00360
00361 static void _tao_any_destructor (void *);
00362
00363
00364
00365
00366 #if !defined (_RTT_CORBA_CONTROLTASK_CONTROLTASKNAMES_CH_)
00367 #define _RTT_CORBA_CONTROLTASK_CONTROLTASKNAMES_CH_
00368
00369 class ControlTaskNames;
00370
00371 typedef
00372 TAO_VarSeq_Var_T<
00373 ControlTaskNames
00374 >
00375 ControlTaskNames_var;
00376
00377 typedef
00378 TAO_Seq_Out_T<
00379 ControlTaskNames
00380 >
00381 ControlTaskNames_out;
00382
00383 class ControlTaskNames
00384 : public
00385 TAO::unbounded_basic_string_sequence<char>
00386 {
00387 public:
00388 ControlTaskNames (void);
00389 ControlTaskNames ( ::CORBA::ULong max);
00390 ControlTaskNames (
00391 ::CORBA::ULong max,
00392 ::CORBA::ULong length,
00393 ::CORBA::Char ** buffer,
00394 ::CORBA::Boolean release = false
00395 );
00396 ControlTaskNames (const ControlTaskNames &);
00397 virtual ~ControlTaskNames (void);
00398
00399 static void _tao_any_destructor (void *);
00400
00401 typedef ControlTaskNames_var _var_type;
00402 typedef ControlTaskNames_out _out_type;
00403
00404
00405 };
00406
00407 #endif
00408
00409
00410
00411
00412 static ::CORBA::TypeCode_ptr const _tc_ControlTaskNames;
00413
00414
00415
00416
00417 virtual ::RTT::Corba::TaskState getTaskState (
00418 void);
00419
00420
00421
00422
00423 virtual ::CORBA::Boolean configure (
00424 void);
00425
00426
00427
00428
00429 virtual ::CORBA::Boolean start (
00430 void);
00431
00432
00433
00434
00435 virtual ::CORBA::Boolean activate (
00436 void);
00437
00438
00439
00440
00441 virtual ::CORBA::Boolean stop (
00442 void);
00443
00444
00445
00446
00447 virtual ::CORBA::Boolean cleanup (
00448 void);
00449
00450
00451
00452
00453 virtual ::CORBA::Boolean resetError (
00454 void);
00455
00456
00457
00458
00459 virtual ::CORBA::Boolean isActive (
00460 void);
00461
00462
00463
00464
00465 virtual ::CORBA::Boolean isRunning (
00466 void);
00467
00468
00469
00470
00471 virtual ::CORBA::Boolean isConfigured (
00472 void);
00473
00474
00475
00476
00477 virtual ::CORBA::Boolean inFatalError (
00478 void);
00479
00480
00481
00482
00483 virtual ::CORBA::Boolean inRunTimeWarning (
00484 void);
00485
00486
00487
00488
00489 virtual ::CORBA::Boolean inRunTimeError (
00490 void);
00491
00492
00493
00494
00495 virtual ::CORBA::Long getWarningCount (
00496 void);
00497
00498
00499
00500
00501 virtual ::CORBA::Long getErrorCount (
00502 void);
00503
00504
00505
00506
00507 virtual ::RTT::Corba::ScriptingAccess_ptr scripting (
00508 void);
00509
00510
00511
00512
00513 virtual ::RTT::Corba::ServiceInterface_ptr services (
00514 void);
00515
00516
00517
00518
00519 virtual ::RTT::Corba::DataFlowInterface_ptr ports (
00520 void);
00521
00522
00523
00524
00525 virtual ::RTT::Corba::ControlTask::ControlTaskNames * getPeerList (
00526 void);
00527
00528
00529
00530
00531 virtual ::RTT::Corba::ControlTask_ptr getPeer (
00532 const char * name);
00533
00534
00535
00536
00537 virtual ::CORBA::Boolean hasPeer (
00538 const char * name);
00539
00540
00541
00542
00543 virtual ::CORBA::Boolean addPeer (
00544 ::RTT::Corba::ControlTask_ptr p,
00545 const char * alias);
00546
00547
00548
00549
00550 virtual ::CORBA::Boolean removePeer (
00551 const char * name);
00552
00553
00554
00555
00556 virtual ::CORBA::Boolean connectPeers (
00557 ::RTT::Corba::ControlTask_ptr p);
00558
00559
00560
00561
00562 virtual ::CORBA::Boolean disconnectPeers (
00563 const char * name);
00564
00565
00566
00567
00568 virtual ::CORBA::Boolean connectPorts (
00569 ::RTT::Corba::ControlTask_ptr p);
00570
00571
00572
00573
00574 virtual ::CORBA::Boolean _is_a (const char *type_id);
00575 virtual const char* _interface_repository_id (void) const;
00576 virtual ::CORBA::Boolean marshal (TAO_OutputCDR &cdr);
00577 private:
00578 TAO::Collocation_Proxy_Broker *the_TAO_ControlTask_Proxy_Broker_;
00579
00580 protected:
00581
00582 ControlTask (void);
00583
00584
00585
00586 virtual void RTT_Corba_ControlTask_setup_collocation (void);
00587
00588
00589 ControlTask (
00590 IOP::IOR *ior,
00591 TAO_ORB_Core *orb_core = 0);
00592
00593
00594 ControlTask (
00595 TAO_Stub *objref,
00596 ::CORBA::Boolean _tao_collocated = false,
00597 TAO_Abstract_ServantBase *servant = 0,
00598 TAO_ORB_Core *orb_core = 0);
00599
00600 virtual ~ControlTask (void);
00601
00602 private:
00603
00604 ControlTask (const ControlTask &);
00605
00606 void operator= (const ControlTask &);
00607 };
00608
00609 #endif
00610
00611
00612
00613
00614 extern ::CORBA::TypeCode_ptr const _tc_ControlTask;
00615
00616
00617
00618
00619 }
00620
00621
00622
00623
00624 }
00625
00626
00627
00628
00629
00630
00631 extern
00632 TAO::Collocation_Proxy_Broker *
00633 (*RTT_Corba__TAO_ControlObject_Proxy_Broker_Factory_function_pointer) (
00634 ::CORBA::Object_ptr obj
00635 );
00636
00637 extern
00638 TAO::Collocation_Proxy_Broker *
00639 (*RTT_Corba__TAO_ControlTask_Proxy_Broker_Factory_function_pointer) (
00640 ::CORBA::Object_ptr obj
00641 );
00642
00643
00644
00645
00646 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00647
00648
00649 namespace TAO
00650 {
00651
00652 #if !defined (_RTT_CORBA_CONTROLOBJECT__TRAITS_)
00653 #define _RTT_CORBA_CONTROLOBJECT__TRAITS_
00654
00655 template<>
00656 struct Objref_Traits< ::RTT::Corba::ControlObject>
00657 {
00658 static ::RTT::Corba::ControlObject_ptr duplicate (
00659 ::RTT::Corba::ControlObject_ptr p
00660 );
00661 static void release (
00662 ::RTT::Corba::ControlObject_ptr p
00663 );
00664 static ::RTT::Corba::ControlObject_ptr nil (void);
00665 static ::CORBA::Boolean marshal (
00666 const ::RTT::Corba::ControlObject_ptr p,
00667 TAO_OutputCDR & cdr
00668 );
00669 };
00670
00671 #endif
00672
00673 #if !defined (_RTT_CORBA_CONTROLTASK__TRAITS_)
00674 #define _RTT_CORBA_CONTROLTASK__TRAITS_
00675
00676 template<>
00677 struct Objref_Traits< ::RTT::Corba::ControlTask>
00678 {
00679 static ::RTT::Corba::ControlTask_ptr duplicate (
00680 ::RTT::Corba::ControlTask_ptr p
00681 );
00682 static void release (
00683 ::RTT::Corba::ControlTask_ptr p
00684 );
00685 static ::RTT::Corba::ControlTask_ptr nil (void);
00686 static ::CORBA::Boolean marshal (
00687 const ::RTT::Corba::ControlTask_ptr p,
00688 TAO_OutputCDR & cdr
00689 );
00690 };
00691
00692 #endif
00693 }
00694 TAO_END_VERSIONED_NAMESPACE_DECL
00695
00696
00697
00698
00699
00700
00701
00702 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00703
00704 void operator<<= ( ::CORBA::Any &, const RTT::Corba::ObjectList &);
00705 void operator<<= ( ::CORBA::Any &, RTT::Corba::ObjectList*);
00706 ::CORBA::Boolean operator>>= (const ::CORBA::Any &, RTT::Corba::ObjectList *&);
00707 ::CORBA::Boolean operator>>= (const ::CORBA::Any &, const RTT::Corba::ObjectList *&);
00708 TAO_END_VERSIONED_NAMESPACE_DECL
00709
00710
00711
00712
00713
00714
00715
00716
00717 #if defined (ACE_ANY_OPS_USE_NAMESPACE)
00718
00719 namespace RTT
00720 {
00721
00722 namespace Corba
00723 {
00724 void operator<<= ( ::CORBA::Any &, ControlObject_ptr);
00725 void operator<<= ( ::CORBA::Any &, ControlObject_ptr *);
00726 ::CORBA::Boolean operator>>= (const ::CORBA::Any &, ControlObject_ptr &);
00727 }
00728 }
00729
00730 #else
00731
00732
00733 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00734
00735 void operator<<= (::CORBA::Any &, RTT::Corba::ControlObject_ptr);
00736 void operator<<= (::CORBA::Any &, RTT::Corba::ControlObject_ptr *);
00737 ::CORBA::Boolean operator>>= (const ::CORBA::Any &, RTT::Corba::ControlObject_ptr &);
00738 TAO_END_VERSIONED_NAMESPACE_DECL
00739
00740
00741
00742 #endif
00743
00744
00745
00746 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00747
00748
00749
00750 void operator<<= (::CORBA::Any &, RTT::Corba::TaskState);
00751 ::CORBA::Boolean operator>>= (const ::CORBA::Any &, RTT::Corba::TaskState &);
00752 TAO_END_VERSIONED_NAMESPACE_DECL
00753
00754
00755
00756
00757
00758
00759
00760
00761 #if defined (ACE_ANY_OPS_USE_NAMESPACE)
00762
00763 namespace RTT
00764 {
00765
00766 namespace Corba
00767 {
00768 void operator<<= ( ::CORBA::Any &, ControlTask_ptr);
00769 void operator<<= ( ::CORBA::Any &, ControlTask_ptr *);
00770 ::CORBA::Boolean operator>>= (const ::CORBA::Any &, ControlTask_ptr &);
00771 }
00772 }
00773
00774 #else
00775
00776
00777 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00778
00779 void operator<<= (::CORBA::Any &, RTT::Corba::ControlTask_ptr);
00780 void operator<<= (::CORBA::Any &, RTT::Corba::ControlTask_ptr *);
00781 ::CORBA::Boolean operator>>= (const ::CORBA::Any &, RTT::Corba::ControlTask_ptr &);
00782 TAO_END_VERSIONED_NAMESPACE_DECL
00783
00784
00785
00786 #endif
00787
00788
00789
00790
00791
00792 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00793
00794 void operator<<= ( ::CORBA::Any &, const RTT::Corba::ControlTask::ControlTaskNames &);
00795 void operator<<= ( ::CORBA::Any &, RTT::Corba::ControlTask::ControlTaskNames*);
00796 ::CORBA::Boolean operator>>= (const ::CORBA::Any &, RTT::Corba::ControlTask::ControlTaskNames *&);
00797 ::CORBA::Boolean operator>>= (const ::CORBA::Any &, const RTT::Corba::ControlTask::ControlTaskNames *&);
00798 TAO_END_VERSIONED_NAMESPACE_DECL
00799
00800
00801
00802
00803
00804
00805 #if !defined _TAO_CDR_OP_RTT_Corba_ObjectList_H_
00806 #define _TAO_CDR_OP_RTT_Corba_ObjectList_H_
00807 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00808
00809
00810
00811 ::CORBA::Boolean operator<< (
00812 TAO_OutputCDR &strm,
00813 const RTT::Corba::ObjectList &_tao_sequence
00814 );
00815 ::CORBA::Boolean operator>> (
00816 TAO_InputCDR &strm,
00817 RTT::Corba::ObjectList &_tao_sequence
00818 );
00819 TAO_END_VERSIONED_NAMESPACE_DECL
00820
00821
00822
00823 #endif
00824
00825
00826
00827
00828 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00829
00830 ::CORBA::Boolean operator<< (TAO_OutputCDR &, const RTT::Corba::ControlObject_ptr );
00831 ::CORBA::Boolean operator>> (TAO_InputCDR &, RTT::Corba::ControlObject_ptr &);
00832
00833 TAO_END_VERSIONED_NAMESPACE_DECL
00834
00835
00836
00837
00838
00839
00840
00841 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00842
00843 ::CORBA::Boolean operator<< (TAO_OutputCDR &strm, RTT::Corba::TaskState _tao_enumerator);
00844 ::CORBA::Boolean operator>> (TAO_InputCDR &strm, RTT::Corba::TaskState &_tao_enumerator);
00845
00846 TAO_END_VERSIONED_NAMESPACE_DECL
00847
00848
00849
00850
00851
00852
00853 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00854
00855 ::CORBA::Boolean operator<< (TAO_OutputCDR &, const RTT::Corba::ControlTask_ptr );
00856 ::CORBA::Boolean operator>> (TAO_InputCDR &, RTT::Corba::ControlTask_ptr &);
00857
00858 TAO_END_VERSIONED_NAMESPACE_DECL
00859
00860
00861
00862
00863
00864
00865 #if !defined _TAO_CDR_OP_RTT_Corba_ControlTask_ControlTaskNames_H_
00866 #define _TAO_CDR_OP_RTT_Corba_ControlTask_ControlTaskNames_H_
00867 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00868
00869
00870
00871 ::CORBA::Boolean operator<< (
00872 TAO_OutputCDR &strm,
00873 const RTT::Corba::ControlTask::ControlTaskNames &_tao_sequence
00874 );
00875 ::CORBA::Boolean operator>> (
00876 TAO_InputCDR &strm,
00877 RTT::Corba::ControlTask::ControlTaskNames &_tao_sequence
00878 );
00879 TAO_END_VERSIONED_NAMESPACE_DECL
00880
00881
00882
00883 #endif
00884
00885
00886
00887 #if defined (__ACE_INLINE__)
00888 #include "ControlTaskC.inl"
00889 #endif
00890
00891 #endif
00892
00893