diff options
author | msmit <msmit@remedy.nl> | 2010-10-22 09:03:59 +0000 |
---|---|---|
committer | msmit <msmit@remedy.nl> | 2010-10-22 09:03:59 +0000 |
commit | 7894703307ee34b50144ddcc0dfe76338b408933 (patch) | |
tree | b8fb18e7719a3904b463b631a5e68390c3e3fc65 | |
parent | b78b27954a1fd832bec7e38378eaed10a23ca57e (diff) | |
download | ATCD-7894703307ee34b50144ddcc0dfe76338b408933.tar.gz |
Fri Oct 22 09:09:12 UTC 2010 Marcel Smit <msmit@remedy.nl>
* connectors/dds4ccm/tutorials/Shapes/Shapes_asm/Shapes_Control_comp/src/Shapes_Control_comp_exec.h:
* connectors/dds4ccm/tutorials/Shapes/Shapes_asm/Shapes_Control_comp/src/Shapes_Control_comp_exec.cpp:
* connectors/dds4ccm/tutorials/Shapes/Shapes_asm/Shapes_Receiver_comp/src/Shapes_Receiver_comp_exec.h:
* connectors/dds4ccm/tutorials/Shapes/Shapes_asm/Shapes_Receiver_comp/src/Shapes_Receiver_comp_exec.cpp:
* connectors/dds4ccm/tutorials/Shapes/Shapes_asm/Shapes_Sender_comp/src/Shapes_Sender_comp_exec.h:
* connectors/dds4ccm/tutorials/Shapes/Shapes_asm/Shapes_Sender_comp/src/Shapes_Sender_comp_exec.cpp:
Rewritten, based on the generated code.
7 files changed, 386 insertions, 175 deletions
diff --git a/CIAO/ChangeLog b/CIAO/ChangeLog index 40456022083..08162d3d8c3 100644 --- a/CIAO/ChangeLog +++ b/CIAO/ChangeLog @@ -1,3 +1,13 @@ +Fri Oct 22 09:09:12 UTC 2010 Marcel Smit <msmit@remedy.nl> + + * connectors/dds4ccm/tutorials/Shapes/Shapes_asm/Shapes_Control_comp/src/Shapes_Control_comp_exec.h: + * connectors/dds4ccm/tutorials/Shapes/Shapes_asm/Shapes_Control_comp/src/Shapes_Control_comp_exec.cpp: + * connectors/dds4ccm/tutorials/Shapes/Shapes_asm/Shapes_Receiver_comp/src/Shapes_Receiver_comp_exec.h: + * connectors/dds4ccm/tutorials/Shapes/Shapes_asm/Shapes_Receiver_comp/src/Shapes_Receiver_comp_exec.cpp: + * connectors/dds4ccm/tutorials/Shapes/Shapes_asm/Shapes_Sender_comp/src/Shapes_Sender_comp_exec.h: + * connectors/dds4ccm/tutorials/Shapes/Shapes_asm/Shapes_Sender_comp/src/Shapes_Sender_comp_exec.cpp: + Rewritten, based on the generated code. + Fri Oct 22 07:54:23 UTC 2010 Marcel Smit <msmit@remedy.nl> * connectors/dds4ccm/tutorials/Shapes/Tutorial/Code/Shapes_Control_comp/Shapes_Control_comp_exec.h: diff --git a/CIAO/connectors/dds4ccm/tutorials/Shapes/Shapes_asm/Shapes_Control_comp/src/Shapes_Control_comp_exec.cpp b/CIAO/connectors/dds4ccm/tutorials/Shapes/Shapes_asm/Shapes_Control_comp/src/Shapes_Control_comp_exec.cpp index dbf83e92db4..57cc785c2fe 100644 --- a/CIAO/connectors/dds4ccm/tutorials/Shapes/Shapes_asm/Shapes_Control_comp/src/Shapes_Control_comp_exec.cpp +++ b/CIAO/connectors/dds4ccm/tutorials/Shapes/Shapes_asm/Shapes_Control_comp/src/Shapes_Control_comp_exec.cpp @@ -2,9 +2,10 @@ // $Id$ #include "Shapes_Control_comp_exec.h" +#include "tao/ORB_Core.h" + #include "ace/Guard_T.h" #include "ace/Log_Msg.h" -#include "tao/ORB_Core.h" #include "ace/Reactor.h" #define MIN_SIZE 5 @@ -31,20 +32,21 @@ namespace CIAO_Shapes_Control_comp_Impl } //============================================================ - // Control_comp_exec_i + // Component Executor Implementation Class: Control_comp_exec_i //============================================================ + Control_comp_exec_i::Control_comp_exec_i (void) - : rate_ (1), - max_x_ (100), - max_y_ (100), - max_size_ (25), - resize_ (false), - x_increasing_ (false), - y_increasing_ (false), - size_increasing_ (false), - current_size_ (ACE_OS::rand () % max_size_), - current_x_ (ACE_OS::rand () % max_x_), - current_y_ (ACE_OS::rand () % max_y_) + : rate_ (0) + , max_x_ (0) + , max_y_ (0) + , max_size_ (0) + , resize_shape_ (false) + , x_increasing_ (false) + , y_increasing_ (false) + , size_increasing_ (false) + , current_size_ (ACE_OS::rand () % max_size_) + , current_x_ (ACE_OS::rand () % max_x_) + , current_y_ (ACE_OS::rand () % max_y_) { this->ticker_ = new pulse_Generator (*this); } @@ -54,6 +56,26 @@ namespace CIAO_Shapes_Control_comp_Impl } // Supported operations and attributes. + ACE_Reactor* + Control_comp_exec_i::reactor (void) + { + ACE_Reactor* reactor = 0; + ::CORBA::Object_var ccm_object = + this->ciao_context_->get_CCM_object(); + if (! ::CORBA::is_nil (ccm_object.in ())) + { + ::CORBA::ORB_var orb = ccm_object->_get_orb (); + if (! ::CORBA::is_nil (orb.in ())) + { + reactor = orb->orb_core ()->reactor (); + } + } + if (reactor == 0) + { + throw ::CORBA::INTERNAL (); + } + return reactor; + } void Control_comp_exec_i::tick () @@ -99,7 +121,7 @@ namespace CIAO_Shapes_Control_comp_Impl } } ::Shapes::Control_obj_var control = - this->context_->get_connection_control (); + this->ciao_context_->get_connection_control (); if (! ::CORBA::is_nil (control)) { if (control->setSize (this->current_size_) == ::Shapes::RETURN_ERROR) @@ -131,14 +153,14 @@ namespace CIAO_Shapes_Control_comp_Impl { ACE_ERROR ((LM_ERROR, ACE_TEXT ("Unable to control shapes\n"))); } - } + } void Control_comp_exec_i::start (void) { // calculate the interval time long const usec = 1000000 / this->rate_; - if (this->context_->get_CCM_object()->_get_orb ()->orb_core ()->reactor ()->schedule_timer ( + if (this->reactor ()->schedule_timer ( this->ticker_, 0, ACE_Time_Value (0, usec), @@ -152,10 +174,12 @@ namespace CIAO_Shapes_Control_comp_Impl void Control_comp_exec_i::stop (void) { - this->context_->get_CCM_object()->_get_orb ()->orb_core ()->reactor ()->cancel_timer (this->ticker_); + this->reactor ()->cancel_timer (this->ticker_); delete this->ticker_; } + // Component attributes and port operations. + ::CORBA::ULong Control_comp_exec_i::rate (void) { @@ -163,7 +187,8 @@ namespace CIAO_Shapes_Control_comp_Impl } void - Control_comp_exec_i::rate (::CORBA::ULong rate) + Control_comp_exec_i::rate ( + const ::CORBA::ULong rate) { this->rate_ = rate; } @@ -175,7 +200,8 @@ namespace CIAO_Shapes_Control_comp_Impl } void - Control_comp_exec_i::max_x (::CORBA::UShort max_x) + Control_comp_exec_i::max_x ( + const ::CORBA::UShort max_x) { this->max_x_ = max_x; } @@ -187,7 +213,8 @@ namespace CIAO_Shapes_Control_comp_Impl } void - Control_comp_exec_i::max_y (::CORBA::UShort max_y) + Control_comp_exec_i::max_y ( + const ::CORBA::UShort max_y) { this->max_y_ = max_y; } @@ -199,36 +226,35 @@ namespace CIAO_Shapes_Control_comp_Impl } void - Control_comp_exec_i::max_size (::CORBA::UShort max_size) + Control_comp_exec_i::max_size ( + const ::CORBA::UShort max_size) { this->max_size_ = max_size; } - void - Control_comp_exec_i::resize_shape (::CORBA::Boolean resize) - { - this->resize_ = resize; - } - ::CORBA::Boolean - Control_comp_exec_i::resize_shape () + Control_comp_exec_i::resize_shape (void) { - return this->resize_; + return this->resize_shape_; } - ::Shapes::CCM_Control_obj_ptr - Control_comp_exec_i::get_control (void) + void + Control_comp_exec_i::resize_shape ( + const ::CORBA::Boolean resize_shape) { - return ::Shapes::CCM_Control_obj::_nil (); + this->resize_shape_ = resize_shape; } + // Operations from Components::SessionComponent. + void - Control_comp_exec_i::set_session_context (::Components::SessionContext_ptr ctx) + Control_comp_exec_i::set_session_context ( + ::Components::SessionContext_ptr ctx) { - this->context_ = + this->ciao_context_ = ::Shapes::CCM_Control_comp_Context::_narrow (ctx); - if ( ::CORBA::is_nil (this->context_.in ())) + if ( ::CORBA::is_nil (this->ciao_context_.in ())) { throw ::CORBA::INTERNAL (); } @@ -237,12 +263,13 @@ namespace CIAO_Shapes_Control_comp_Impl void Control_comp_exec_i::configuration_complete (void) { + /* Your code here. */ } void Control_comp_exec_i::ccm_activate (void) { - this->start (); + this->start (); } void @@ -254,6 +281,7 @@ namespace CIAO_Shapes_Control_comp_Impl void Control_comp_exec_i::ccm_remove (void) { + /* Your code here. */ } extern "C" SHAPES_CONTROL_COMP_EXEC_Export ::Components::EnterpriseComponent_ptr @@ -269,4 +297,3 @@ namespace CIAO_Shapes_Control_comp_Impl return retval; } } - diff --git a/CIAO/connectors/dds4ccm/tutorials/Shapes/Shapes_asm/Shapes_Control_comp/src/Shapes_Control_comp_exec.h b/CIAO/connectors/dds4ccm/tutorials/Shapes/Shapes_asm/Shapes_Control_comp/src/Shapes_Control_comp_exec.h index be6c13ad8a1..6b6b5884cb7 100644 --- a/CIAO/connectors/dds4ccm/tutorials/Shapes/Shapes_asm/Shapes_Control_comp/src/Shapes_Control_comp_exec.h +++ b/CIAO/connectors/dds4ccm/tutorials/Shapes/Shapes_asm/Shapes_Control_comp/src/Shapes_Control_comp_exec.h @@ -1,8 +1,10 @@ // -*- C++ -*- // $Id$ -#ifndef CIAO_CONTROL_EXEC_H_ -#define CIAO_CONTROL_EXEC_H_ +#ifndef CIAO__________TUTORIAL_CODE_SHAPES_CONTROL_COMP_SHAPES_CONTROL_COMP_EXEC_J4CMMK_H_ +#define CIAO__________TUTORIAL_CODE_SHAPES_CONTROL_COMP_SHAPES_CONTROL_COMP_EXEC_J4CMMK_H_ + +#include /**/ "ace/pre.h" #include "Shapes_Control_compEC.h" @@ -35,8 +37,9 @@ namespace CIAO_Shapes_Control_comp_Impl }; //============================================================ - // Control_comp_exec_i + // Component Executor Implementation Class: Control_comp_exec_i //============================================================ + class SHAPES_CONTROL_COMP_EXEC_Export Control_comp_exec_i : public virtual Control_comp_Exec, public virtual ::CORBA::LocalObject @@ -45,28 +48,36 @@ namespace CIAO_Shapes_Control_comp_Impl Control_comp_exec_i (void); virtual ~Control_comp_exec_i (void); - ::CORBA::ULong rate (void); + //@{ + /** Supported operations and attributes. */ + + //@} + + //@{ + /** Component attributes and port operations. */ + + virtual ::CORBA::ULong rate (void); - void rate (::CORBA::ULong rate); + virtual void rate (::CORBA::ULong rate); - ::CORBA::UShort max_x (void); + virtual ::CORBA::UShort max_x (void); - void max_x (::CORBA::UShort max_x); + virtual void max_x (::CORBA::UShort max_x); - ::CORBA::UShort max_y (void); + virtual ::CORBA::UShort max_y (void); - void max_y (::CORBA::UShort max_y); + virtual void max_y (::CORBA::UShort max_y); - ::CORBA::UShort max_size (void); + virtual ::CORBA::UShort max_size (void); - void max_size (::CORBA::UShort max_size); + virtual void max_size (::CORBA::UShort max_size); - void resize_shape (::CORBA::Boolean resize); + virtual ::CORBA::Boolean resize_shape (void); - ::CORBA::Boolean resize_shape (void); + virtual void resize_shape (::CORBA::Boolean resize_shape);//@} - virtual ::Shapes::CCM_Control_obj_ptr - get_control (void); + //@{ + /** Operations from Components::SessionComponent. */ virtual void set_session_context (::Components::SessionContext_ptr ctx); @@ -75,19 +86,26 @@ namespace CIAO_Shapes_Control_comp_Impl virtual void ccm_activate (void); virtual void ccm_passivate (void); virtual void ccm_remove (void); + //@} - void tick (); + //@{ + /** User defined operations */ + void tick (void); - private: - ::Shapes::CCM_Control_comp_Context_var context_; + //@} - pulse_Generator * ticker_; + private: + ::Shapes::CCM_Control_comp_Context_var ciao_context_; ::CORBA::ULong rate_; + ::CORBA::UShort max_x_; + ::CORBA::UShort max_y_; + ::CORBA::UShort max_size_; - ::CORBA::Boolean resize_; + + ::CORBA::Boolean resize_shape_; bool x_increasing_; bool y_increasing_; @@ -97,13 +115,18 @@ namespace CIAO_Shapes_Control_comp_Impl ::CORBA::UShort current_x_; ::CORBA::UShort current_y_; + pulse_Generator * ticker_; + void start (void); void stop (void); + + ACE_Reactor* reactor (void); }; extern "C" SHAPES_CONTROL_COMP_EXEC_Export ::Components::EnterpriseComponent_ptr create_Shapes_Control_comp_Impl (void); } -#endif /* ifndef */ +#include /**/ "ace/post.h" +#endif /* ifndef */ diff --git a/CIAO/connectors/dds4ccm/tutorials/Shapes/Shapes_asm/Shapes_Receiver_comp/src/Shapes_Receiver_comp_exec.cpp b/CIAO/connectors/dds4ccm/tutorials/Shapes/Shapes_asm/Shapes_Receiver_comp/src/Shapes_Receiver_comp_exec.cpp index 55db6efaa97..8fe912d76bf 100644 --- a/CIAO/connectors/dds4ccm/tutorials/Shapes/Shapes_asm/Shapes_Receiver_comp/src/Shapes_Receiver_comp_exec.cpp +++ b/CIAO/connectors/dds4ccm/tutorials/Shapes/Shapes_asm/Shapes_Receiver_comp/src/Shapes_Receiver_comp_exec.cpp @@ -1,18 +1,19 @@ // -*- C++ -*- -// // $Id$ #include "Shapes_Receiver_comp_exec.h" -#include "ace/Log_Msg.h" -#include "tao/ORB_Core.h" -#include "ace/OS_NS_time.h" namespace CIAO_Shapes_Receiver_comp_Impl { + //============================================================ - // info_out_data_listener_exec_i + // Facet Executor Implementation Class: info_out_data_listener_exec_i //============================================================ - info_out_data_listener_exec_i::info_out_data_listener_exec_i (void) + + info_out_data_listener_exec_i::info_out_data_listener_exec_i ( + ::Shapes::CCM_Receiver_comp_Context_ptr ctx) + : ciao_context_ ( + ::Shapes::CCM_Receiver_comp_Context::_duplicate (ctx)) { } @@ -20,32 +21,63 @@ namespace CIAO_Shapes_Receiver_comp_Impl { } - // Operations from ::CCM_DDS::ShapeType_Listener + // Operations from ::Shapes::ShapeType_conn::Listener + void - info_out_data_listener_exec_i::on_many_data ( - const ::Shapes::ShapeTypeSeq & /* an_instance */, - const ::CCM_DDS::ReadInfoSeq & /* info */) + info_out_data_listener_exec_i::on_one_data (const ::ShapeType & datum, + const ::CCM_DDS::ReadInfo & /* info */) { + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("ShapeType_Listener: ") + ACE_TEXT ("received shape_info for <%C> at %u:%u:%u\n"), + datum.color.in (), + datum.x, + datum.y, + datum.shapesize)); } void - info_out_data_listener_exec_i::on_one_data ( - const ShapeType & an_instance , - const ::CCM_DDS::ReadInfo & /* info */) + info_out_data_listener_exec_i::on_many_data (const ::Shapes::ShapeTypeSeq & /* data */, + const ::CCM_DDS::ReadInfoSeq & /* infos */) { - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("ShapeType_Listener: ") - ACE_TEXT ("received shape_info for <%C> at %u:%u:%u\n"), - an_instance.color.in (), - an_instance.x, - an_instance.y, - an_instance.shapesize)); + /* Your code here. */ } //============================================================ - // Receiver_comp_exec_i + // Facet Executor Implementation Class: info_out_status_exec_i //============================================================ - Receiver_comp_exec_i::Receiver_comp_exec_i (void) + + info_out_status_exec_i::info_out_status_exec_i ( + ::Shapes::CCM_Receiver_comp_Context_ptr ctx) + : ciao_context_ ( + ::Shapes::CCM_Receiver_comp_Context::_duplicate (ctx)) + { + } + + info_out_status_exec_i::~info_out_status_exec_i (void) + { + } + + // Operations from ::CCM_DDS::PortStatusListener + + void + info_out_status_exec_i::on_requested_deadline_missed (::DDS::DataReader_ptr /* the_reader */, + const ::DDS::RequestedDeadlineMissedStatus & /* status */) + { + /* Your code here. */ + } + + void + info_out_status_exec_i::on_sample_lost (::DDS::DataReader_ptr /* the_reader */, + const ::DDS::SampleLostStatus & /* status */) { + /* Your code here. */ + } + + //============================================================ + // Component Executor Implementation Class: Receiver_comp_exec_i + //============================================================ + + Receiver_comp_exec_i::Receiver_comp_exec_i (void){ } Receiver_comp_exec_i::~Receiver_comp_exec_i (void) @@ -54,9 +86,8 @@ namespace CIAO_Shapes_Receiver_comp_Impl // Supported operations and attributes. - // Component attributes. + // Component attributes and port operations. - // Port operations. ::Shapes::ShapeType_conn::CCM_Listener_ptr Receiver_comp_exec_i::get_info_out_data_listener (void) { @@ -65,10 +96,11 @@ namespace CIAO_Shapes_Receiver_comp_Impl info_out_data_listener_exec_i *tmp = 0; ACE_NEW_RETURN ( tmp, - info_out_data_listener_exec_i (), - ::Shapes::ShapeType_conn::CCM_Listener::_nil ()); + info_out_data_listener_exec_i ( + this->ciao_context_.in ()), + ::Shapes::ShapeType_conn::CCM_Listener::_nil ()); - this->ciao_info_out_data_listener_ = tmp; + this->ciao_info_out_data_listener_ = tmp; } return @@ -79,17 +111,33 @@ namespace CIAO_Shapes_Receiver_comp_Impl ::CCM_DDS::CCM_PortStatusListener_ptr Receiver_comp_exec_i::get_info_out_status (void) { - return ::CCM_DDS::CCM_PortStatusListener::_nil (); + if ( ::CORBA::is_nil (this->ciao_info_out_status_.in ())) + { + info_out_status_exec_i *tmp = 0; + ACE_NEW_RETURN ( + tmp, + info_out_status_exec_i ( + this->ciao_context_.in ()), + ::CCM_DDS::CCM_PortStatusListener::_nil ()); + + this->ciao_info_out_status_ = tmp; + } + + return + ::CCM_DDS::CCM_PortStatusListener::_duplicate ( + this->ciao_info_out_status_.in ()); } // Operations from Components::SessionComponent. + void Receiver_comp_exec_i::set_session_context ( ::Components::SessionContext_ptr ctx) { - this->context_ = + this->ciao_context_ = ::Shapes::CCM_Receiver_comp_Context::_narrow (ctx); - if ( ::CORBA::is_nil (this->context_.in ())) + + if ( ::CORBA::is_nil (this->ciao_context_.in ())) { throw ::CORBA::INTERNAL (); } @@ -98,14 +146,14 @@ namespace CIAO_Shapes_Receiver_comp_Impl void Receiver_comp_exec_i::configuration_complete (void) { + /* Your code here. */ } void Receiver_comp_exec_i::ccm_activate (void) { ::CCM_DDS::DataListenerControl_var lc = - this->context_->get_connection_info_out_data_control (); - + this->ciao_context_->get_connection_info_out_data_control (); if (::CORBA::is_nil (lc.in ())) { ACE_ERROR ((LM_INFO, ACE_TEXT ("Error: Listener control receptacle is null!\n"))); @@ -118,11 +166,13 @@ namespace CIAO_Shapes_Receiver_comp_Impl void Receiver_comp_exec_i::ccm_passivate (void) { + /* Your code here. */ } void Receiver_comp_exec_i::ccm_remove (void) { + /* Your code here. */ } extern "C" SHAPES_RECEIVER_COMP_EXEC_Export ::Components::EnterpriseComponent_ptr @@ -138,4 +188,3 @@ namespace CIAO_Shapes_Receiver_comp_Impl return retval; } } - diff --git a/CIAO/connectors/dds4ccm/tutorials/Shapes/Shapes_asm/Shapes_Receiver_comp/src/Shapes_Receiver_comp_exec.h b/CIAO/connectors/dds4ccm/tutorials/Shapes/Shapes_asm/Shapes_Receiver_comp/src/Shapes_Receiver_comp_exec.h index 9fdc43688c9..6e8a211cb6d 100644 --- a/CIAO/connectors/dds4ccm/tutorials/Shapes/Shapes_asm/Shapes_Receiver_comp/src/Shapes_Receiver_comp_exec.h +++ b/CIAO/connectors/dds4ccm/tutorials/Shapes/Shapes_asm/Shapes_Receiver_comp/src/Shapes_Receiver_comp_exec.h @@ -1,8 +1,10 @@ // -*- C++ -*- // $Id$ -#ifndef SHAPES_RECEIVER_EXEC_H_ -#define SHAPES_RECEIVER_EXEC_H_ +#ifndef CIAO__________TUTORIAL_CODE_SHAPES_RECEIVER_COMP_SHAPES_RECEIVER_COMP_EXEC_GD0QCU_H_ +#define CIAO__________TUTORIAL_CODE_SHAPES_RECEIVER_COMP_SHAPES_RECEIVER_COMP_EXEC_GD0QCU_H_ + +#include /**/ "ace/pre.h" #include "Shapes_Receiver_compEC.h" @@ -16,27 +18,65 @@ namespace CIAO_Shapes_Receiver_comp_Impl { + //============================================================ - // info_out_data_listener_exec_i + // Provider Executor Implementation Class: info_out_data_listener_exec_i //============================================================ + class SHAPES_RECEIVER_COMP_EXEC_Export info_out_data_listener_exec_i : public virtual ::Shapes::ShapeType_conn::CCM_Listener, public virtual ::CORBA::LocalObject { public: - info_out_data_listener_exec_i (); + info_out_data_listener_exec_i ( + ::Shapes::CCM_Receiver_comp_Context_ptr ctx); virtual ~info_out_data_listener_exec_i (void); - virtual void - on_one_data ( - const ShapeType & an_instance, - const ::CCM_DDS::ReadInfo & info); - virtual void - on_many_data ( - const ::Shapes::ShapeTypeSeq & an_instance, - const ::CCM_DDS::ReadInfoSeq & info); + // Operations and attributes from ::Shapes::ShapeType_conn::Listener + + virtual + void on_one_data (const ::ShapeType & datum, + const ::CCM_DDS::ReadInfo & info); + + virtual + void on_many_data (const ::Shapes::ShapeTypeSeq & data, + const ::CCM_DDS::ReadInfoSeq & infos); + + private: + ::Shapes::CCM_Receiver_comp_Context_var ciao_context_; }; + //============================================================ + // Provider Executor Implementation Class: info_out_status_exec_i + //============================================================ + + class SHAPES_RECEIVER_COMP_EXEC_Export info_out_status_exec_i + : public virtual ::CCM_DDS::CCM_PortStatusListener, + public virtual ::CORBA::LocalObject + { + public: + info_out_status_exec_i ( + ::Shapes::CCM_Receiver_comp_Context_ptr ctx); + virtual ~info_out_status_exec_i (void); + + // Operations and attributes from ::CCM_DDS::PortStatusListener + + virtual + void on_requested_deadline_missed (::DDS::DataReader_ptr the_reader, + const ::DDS::RequestedDeadlineMissedStatus & status); + + virtual + void on_sample_lost (::DDS::DataReader_ptr the_reader, + const ::DDS::SampleLostStatus & status); + + private: + ::Shapes::CCM_Receiver_comp_Context_var ciao_context_; + }; + + //============================================================ + // Component Executor Implementation Class: Receiver_comp_exec_i + //============================================================ + class SHAPES_RECEIVER_COMP_EXEC_Export Receiver_comp_exec_i : public virtual Receiver_comp_Exec, public virtual ::CORBA::LocalObject @@ -45,36 +85,47 @@ namespace CIAO_Shapes_Receiver_comp_Impl Receiver_comp_exec_i (void); virtual ~Receiver_comp_exec_i (void); - // Supported operations and attributes. + //@{ + /** Supported operations and attributes. */ + + //@} - // Component attributes. + //@{ + /** Component attributes and port operations. */ - // Port operations. virtual ::Shapes::ShapeType_conn::CCM_Listener_ptr get_info_out_data_listener (void); virtual ::CCM_DDS::CCM_PortStatusListener_ptr - get_info_out_status (void); + get_info_out_status (void);//@} - // Operations from Components::SessionComponent. - virtual void - set_session_context ( - ::Components::SessionContext_ptr ctx); + //@{ + /** Operations from Components::SessionComponent. */ + + virtual void set_session_context (::Components::SessionContext_ptr ctx); virtual void configuration_complete (void); virtual void ccm_activate (void); virtual void ccm_passivate (void); virtual void ccm_remove (void); + //@} + + //@{ + /** User defined operations */ + + //@} private: - ::Shapes::CCM_Receiver_comp_Context_var context_; + ::Shapes::CCM_Receiver_comp_Context_var ciao_context_; ::Shapes::ShapeType_conn::CCM_Listener_var ciao_info_out_data_listener_; + ::CCM_DDS::CCM_PortStatusListener_var ciao_info_out_status_; }; extern "C" SHAPES_RECEIVER_COMP_EXEC_Export ::Components::EnterpriseComponent_ptr create_Shapes_Receiver_comp_Impl (void); } -#endif /* ifndef */ +#include /**/ "ace/post.h" +#endif /* ifndef */ diff --git a/CIAO/connectors/dds4ccm/tutorials/Shapes/Shapes_asm/Shapes_Sender_comp/src/Shapes_Sender_comp_exec.cpp b/CIAO/connectors/dds4ccm/tutorials/Shapes/Shapes_asm/Shapes_Sender_comp/src/Shapes_Sender_comp_exec.cpp index 941d1595034..67245f517e7 100644 --- a/CIAO/connectors/dds4ccm/tutorials/Shapes/Shapes_asm/Shapes_Sender_comp/src/Shapes_Sender_comp_exec.cpp +++ b/CIAO/connectors/dds4ccm/tutorials/Shapes/Shapes_asm/Shapes_Sender_comp/src/Shapes_Sender_comp_exec.cpp @@ -2,42 +2,47 @@ // $Id$ #include "Shapes_Sender_comp_exec.h" -#include "ace/Guard_T.h" -#include "ace/Log_Msg.h" -#include "tao/ORB_Core.h" namespace CIAO_Shapes_Sender_comp_Impl { + //============================================================ - // Controller_exec_i + // Facet Executor Implementation Class: control_exec_i //============================================================ - Controller_exec_i::Controller_exec_i (Sender_exec_i &callback) - : callback_ (callback) + + control_exec_i::control_exec_i ( + ::Shapes::CCM_Sender_comp_Context_ptr ctx, + Sender_comp_exec_i &callback) + : ciao_context_ ( + ::Shapes::CCM_Sender_comp_Context::_duplicate (ctx)), + callback_ (callback) { } - Controller_exec_i::~Controller_exec_i (void) + control_exec_i::~control_exec_i (void) { } + // Operations from ::Shapes::Control_obj + ::Shapes::ReturnStatus - Controller_exec_i::setSize (::CORBA::UShort size) + control_exec_i::setSize (::CORBA::UShort size) { return this->callback_.setSize (size); } ::Shapes::ReturnStatus - Controller_exec_i::setLocation (::CORBA::UShort x, - ::CORBA::UShort y) + control_exec_i::setLocation (::CORBA::UShort x, + ::CORBA::UShort y) { return this->callback_.setLocation (x, y); } - //============================================================ - // Sender_exec_i + // Component Executor Implementation Class: Sender_comp_exec_i //============================================================ - Sender_exec_i::Sender_exec_i (void) + + Sender_comp_exec_i::Sender_comp_exec_i (void) : instance_handle_ (::DDS::HANDLE_NIL) { this->square_.x = 10; @@ -46,38 +51,32 @@ namespace CIAO_Shapes_Sender_comp_Impl this->square_.color = CORBA::string_dup("GREEN"); } - Sender_exec_i::~Sender_exec_i (void) + Sender_comp_exec_i::~Sender_comp_exec_i (void) { } // Supported operations and attributes. - ::Shapes::CCM_Control_obj_ptr - Sender_exec_i::get_control (void) - { - return new Controller_exec_i (*this); - } - ::Shapes::ReturnStatus - Sender_exec_i::setSize (::CORBA::UShort size) + Sender_comp_exec_i::setSize (::CORBA::UShort size) { this->square_.shapesize = size; return this->update_square (); } ::Shapes::ReturnStatus - Sender_exec_i::setLocation (::CORBA::UShort x, + Sender_comp_exec_i::setLocation (::CORBA::UShort x, ::CORBA::UShort y) - { + { this->square_.x = x; this->square_.y = y; return this->update_square (); } ::Shapes::ReturnStatus - Sender_exec_i::update_square () + Sender_comp_exec_i::update_square () { ::Shapes::ShapeType_conn::Writer_var writer = - this->context_->get_connection_info_write_data (); + this->ciao_context_->get_connection_info_write_data (); if (::CORBA::is_nil (writer.in ())) { ACE_ERROR ((LM_ERROR, ACE_TEXT ("Sender_exec_i::update_square - ") @@ -109,28 +108,55 @@ namespace CIAO_Shapes_Sender_comp_Impl return ::Shapes::RETURN_OK; } + // Component attributes and port operations. + + ::Shapes::CCM_Control_obj_ptr + Sender_comp_exec_i::get_control (void) + { + if ( ::CORBA::is_nil (this->ciao_control_.in ())) + { + control_exec_i *tmp = 0; + ACE_NEW_RETURN ( + tmp, + control_exec_i ( + this->ciao_context_.in (), + *this), + ::Shapes::CCM_Control_obj::_nil ()); + + this->ciao_control_ = tmp; + } + + return + ::Shapes::CCM_Control_obj::_duplicate ( + this->ciao_control_.in ()); + } + + // Operations from Components::SessionComponent. + void - Sender_exec_i::set_session_context (::Components::SessionContext_ptr ctx) + Sender_comp_exec_i::set_session_context ( + ::Components::SessionContext_ptr ctx) { - this->context_ = + this->ciao_context_ = ::Shapes::CCM_Sender_comp_Context::_narrow (ctx); - if ( ::CORBA::is_nil (this->context_.in ())) + if ( ::CORBA::is_nil (this->ciao_context_.in ())) { throw ::CORBA::INTERNAL (); } } void - Sender_exec_i::configuration_complete (void) + Sender_comp_exec_i::configuration_complete (void) { + /* Your code here. */ } void - Sender_exec_i::ccm_activate (void) + Sender_comp_exec_i::ccm_activate (void) { ::Shapes::ShapeType_conn::Writer_var writer = - this->context_->get_connection_info_write_data (); + this->ciao_context_->get_connection_info_write_data (); if (::CORBA::is_nil (writer.in ())) { ACE_ERROR ((LM_ERROR, ACE_TEXT ("Sender_exec_i::update_square - ") @@ -161,10 +187,10 @@ namespace CIAO_Shapes_Sender_comp_Impl } void - Sender_exec_i::ccm_passivate (void) + Sender_comp_exec_i::ccm_passivate (void) { ::Shapes::ShapeType_conn::Writer_var writer = - this->context_->get_connection_info_write_data (); + this->ciao_context_->get_connection_info_write_data (); if (::CORBA::is_nil (writer.in ())) { ACE_ERROR ((LM_ERROR, ACE_TEXT ("Sender_exec_i::update_square - ") @@ -192,8 +218,9 @@ namespace CIAO_Shapes_Sender_comp_Impl } void - Sender_exec_i::ccm_remove (void) + Sender_comp_exec_i::ccm_remove (void) { + /* Your code here. */ } extern "C" SHAPES_SENDER_COMP_EXEC_Export ::Components::EnterpriseComponent_ptr @@ -204,9 +231,8 @@ namespace CIAO_Shapes_Sender_comp_Impl ACE_NEW_NORETURN ( retval, - Sender_exec_i); + Sender_comp_exec_i); return retval; } } - diff --git a/CIAO/connectors/dds4ccm/tutorials/Shapes/Shapes_asm/Shapes_Sender_comp/src/Shapes_Sender_comp_exec.h b/CIAO/connectors/dds4ccm/tutorials/Shapes/Shapes_asm/Shapes_Sender_comp/src/Shapes_Sender_comp_exec.h index 97a216558f8..7dc6bfa3b17 100644 --- a/CIAO/connectors/dds4ccm/tutorials/Shapes/Shapes_asm/Shapes_Sender_comp/src/Shapes_Sender_comp_exec.h +++ b/CIAO/connectors/dds4ccm/tutorials/Shapes/Shapes_asm/Shapes_Sender_comp/src/Shapes_Sender_comp_exec.h @@ -1,11 +1,12 @@ // -*- C++ -*- // $Id$ -#ifndef CIAO_SENDER_EXEC_H_ -#define CIAO_SENDER_EXEC_H_ +#ifndef CIAO__________TUTORIAL_CODE_SHAPES_SENDER_COMP_SHAPES_SENDER_COMP_EXEC_FZBRNR_H_ +#define CIAO__________TUTORIAL_CODE_SHAPES_SENDER_COMP_SHAPES_SENDER_COMP_EXEC_FZBRNR_H_ + +#include /**/ "ace/pre.h" #include "Shapes_Sender_compEC.h" -#include "Shapes_Control_objEC.h" #include /**/ "Shapes_Sender_comp_exec_export.h" @@ -17,42 +18,61 @@ namespace CIAO_Shapes_Sender_comp_Impl { - class Sender_exec_i; - + class Sender_comp_exec_i; //============================================================ - // Controller_exec_i + // Provider Executor Implementation Class: control_exec_i //============================================================ - class Controller_exec_i + + class SHAPES_SENDER_COMP_EXEC_Export control_exec_i : public virtual ::Shapes::CCM_Control_obj, public virtual ::CORBA::LocalObject { public: - Controller_exec_i (Sender_exec_i &callback); - virtual ~Controller_exec_i (void); + control_exec_i ( + ::Shapes::CCM_Sender_comp_Context_ptr ctx, + Sender_comp_exec_i &callback); + virtual ~control_exec_i (void); + + // Operations and attributes from ::Shapes::Control_obj - virtual ::Shapes::ReturnStatus - setSize (::CORBA::UShort size); + virtual + ::Shapes::ReturnStatus setSize (::CORBA::UShort size); - virtual ::Shapes::ReturnStatus - setLocation (::CORBA::UShort x, ::CORBA::UShort y); + virtual + ::Shapes::ReturnStatus setLocation (::CORBA::UShort x, + ::CORBA::UShort y); private: - Sender_exec_i &callback_; + ::Shapes::CCM_Sender_comp_Context_var ciao_context_; + Sender_comp_exec_i &callback_; }; //============================================================ - // Sender_exec_i + // Component Executor Implementation Class: Sender_comp_exec_i //============================================================ - class Sender_exec_i + + class SHAPES_SENDER_COMP_EXEC_Export Sender_comp_exec_i : public virtual Sender_comp_Exec, public virtual ::CORBA::LocalObject { public: - Sender_exec_i (void); - virtual ~Sender_exec_i (void); + Sender_comp_exec_i (void); + virtual ~Sender_comp_exec_i (void); + + //@{ + /** Supported operations and attributes. */ + + //@} + + //@{ + /** Component attributes and port operations. */ virtual ::Shapes::CCM_Control_obj_ptr get_control (void); + //@} + + //@{ + /** Operations from Components::SessionComponent. */ virtual void set_session_context (::Components::SessionContext_ptr ctx); @@ -61,26 +81,31 @@ namespace CIAO_Shapes_Sender_comp_Impl virtual void ccm_activate (void); virtual void ccm_passivate (void); virtual void ccm_remove (void); + //@} - ::Shapes::ReturnStatus - setSize (::CORBA::UShort size); + //@{ + /** User defined operations */ + ::Shapes::ReturnStatus setSize (::CORBA::UShort size); - ::Shapes::ReturnStatus - setLocation (::CORBA::UShort x, ::CORBA::UShort y); + ::Shapes::ReturnStatus setLocation (::CORBA::UShort x, + ::CORBA::UShort y); + + //@} private: - ::Shapes::CCM_Sender_comp_Context_var context_; - ::DDS::InstanceHandle_t instance_handle_; + ::Shapes::CCM_Sender_comp_Context_var ciao_context_; + ::Shapes::CCM_Control_obj_var ciao_control_; + ::DDS::InstanceHandle_t instance_handle_; ShapeType square_; - ::Shapes::ReturnStatus - update_square (void); + ::Shapes::ReturnStatus update_square (void); }; extern "C" SHAPES_SENDER_COMP_EXEC_Export ::Components::EnterpriseComponent_ptr create_Shapes_Sender_comp_Impl (void); } -#endif /* ifndef */ +#include /**/ "ace/post.h" +#endif /* ifndef */ |