00001 #ifndef maciTestClassImpl_h 00002 #define maciTestClassImpl_h 00003 00004 /******************************************************************************* 00005 * E.S.O. - ACS project 00006 * 00007 * "@(#) $Id: maciTestClassImpl.h,v 1.92 2011/06/07 23:56:38 javarias Exp $" 00008 * 00009 * who when what 00010 * -------- -------- ---------------------------------------------- 00011 * msekoran 2002-07-05 added hierarchical COB 00012 * msekoran 2002-05-17 MaciTestConstructableClass fixed 00013 * kzagar 2002-02-15 created 00014 */ 00015 00016 /************************************************************************ 00017 * 00018 *---------------------------------------------------------------------- 00019 */ 00020 00021 #ifndef __cplusplus 00022 #error This is a C++ include file and cannot be used from plain C 00023 #endif 00024 00025 #include <acsutil.h> 00026 #include <acscomponentImpl.h> 00027 #include <maciTestS.h> 00028 #include <acsContainerServices.h> 00029 00039 class MaciTestClass: public virtual acscomponent::ACSComponentImpl, 00040 public virtual POA_MACI_TEST::MaciTestClass 00041 { 00042 public: 00043 00045 MaciTestClass ( 00046 const ACE_CString& name, 00047 maci::ContainerServices* containerServices); 00048 00052 virtual ~MaciTestClass(); 00053 00058 int initialization() { return m_initialization; } 00059 00060 /* ----------------------------------------------------------------*/ 00061 /* --------------------- [ CORBA interface ] ----------------------*/ 00062 /* ----------------------------------------------------------------*/ 00063 00064 virtual CORBA::Boolean test (); 00065 00066 virtual CORBA::Object_ptr get_component (const char *cob_url, 00067 CORBA::Boolean activate); 00068 00069 virtual CORBA::Long release_component (const char *cob_url); 00070 00071 virtual void MaciTestClass::activate_internal_component (); 00072 00073 virtual void MaciTestClass::release_internal_component (); 00074 00075 protected: 00076 00078 int m_initialization; 00079 00080 CORBA::Object_var testInternalComp; 00081 00083 ACE_CString m_name; 00084 }; 00085 00086 00087 00088 class MaciHierarchicalTestClass : public MaciTestClass 00089 { 00090 public: 00091 00093 MaciHierarchicalTestClass ( 00094 const ACE_CString& name, 00095 maci::ContainerServices* containerServices); 00096 00100 virtual ~MaciHierarchicalTestClass(); 00101 00102 /* 00103 * @throw acsErrTypeLifeCycle::LifeCycleExImpl 00104 */ 00105 virtual void execute(); 00106 00107 00108 }; 00109 00110 class MaciTestOffShoot: public POA_MACI_TEST::TestOffShoot 00111 { 00112 public: 00113 MaciTestOffShoot(); 00114 ~MaciTestOffShoot(); 00115 }; 00116 00117 #endif /* maciTestClassImpl_h */ 00118 00119 00120 00121 00122