summaryrefslogtreecommitdiff
path: root/CIAO/connectors/dds4ccm/tests/MultiTopic/Sender/MultiTopic_Sender_exec.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'CIAO/connectors/dds4ccm/tests/MultiTopic/Sender/MultiTopic_Sender_exec.cpp')
-rw-r--r--CIAO/connectors/dds4ccm/tests/MultiTopic/Sender/MultiTopic_Sender_exec.cpp350
1 files changed, 0 insertions, 350 deletions
diff --git a/CIAO/connectors/dds4ccm/tests/MultiTopic/Sender/MultiTopic_Sender_exec.cpp b/CIAO/connectors/dds4ccm/tests/MultiTopic/Sender/MultiTopic_Sender_exec.cpp
deleted file mode 100644
index f8239046c6b..00000000000
--- a/CIAO/connectors/dds4ccm/tests/MultiTopic/Sender/MultiTopic_Sender_exec.cpp
+++ /dev/null
@@ -1,350 +0,0 @@
-// -*- C++ -*-
-/**
- * Code generated by the The ACE ORB (TAO) IDL Compiler v1.8.2
- * TAO and the TAO IDL Compiler have been developed by:
- * Center for Distributed Object Computing
- * Washington University
- * St. Louis, MO
- * USA
- * http://www.cs.wustl.edu/~schmidt/doc-center.html
- * and
- * Distributed Object Computing Laboratory
- * University of California at Irvine
- * Irvine, CA
- * USA
- * and
- * Institute for Software Integrated Systems
- * Vanderbilt University
- * Nashville, TN
- * USA
- * http://www.isis.vanderbilt.edu/
- *
- * Information about TAO is available at:
- * http://www.dre.vanderbilt.edu/~schmidt/TAO.html
- **/
-
-#include "MultiTopic_Sender_exec.h"
-#include "tao/ORB_Core.h"
-#include "ace/Reactor.h"
-
-namespace CIAO_Shapes_Sender_Impl
-{
- //============================================================
- // pulse_Generator
- //============================================================
- pulse_Generator::pulse_Generator (Sender_exec_i &callback)
- : pulse_callback_ (callback)
- {
- }
-
- pulse_Generator::~pulse_Generator ()
- {
- }
-
- int
- pulse_Generator::handle_timeout (const ACE_Time_Value &, const void *)
- {
- this->pulse_callback_.tick ();
- return 0;
- }
-
-
- /**
- * Component Executor Implementation Class: Sender_exec_i
- */
- Sender_exec_i::Sender_exec_i (void)
- : rate_ (0),
- max_x_ (0),
- max_y_ (0),
- max_size_ (0),
- resize_shape_ (false),
- TypeOfShape (SHAPE_TYPE_SQUARE)
- {
- ACE_NEW_THROW_EX (this->ticker_,
- pulse_Generator (*this),
- ::CORBA::NO_MEMORY ());
- ACE_NEW_THROW_EX (this->square_,
- ShapeType,
- ::CORBA::NO_MEMORY ());
- ACE_NEW_THROW_EX (this->triangle_,
- ShapeType,
- ::CORBA::NO_MEMORY ());
- ACE_NEW_THROW_EX (this->circle_,
- ShapeType,
- ::CORBA::NO_MEMORY ());
- }
-
- Sender_exec_i::~Sender_exec_i (void)
- {
- delete this->ticker_;
- delete this->square_;
- delete this->triangle_;
- delete this->circle_;
- }
-
- // Supported operations and attributes.
- ACE_Reactor*
- Sender_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
- Sender_exec_i::tick ()
- {
- try
- {
- ::Shapes::DDS_Typed::Writer_var writer;
- if (this->TypeOfShape == SHAPE_TYPE_SQUARE)
- {
- writer = this->ciao_context_->get_connection_info_write_sq_data ();
- }
- else if (this->TypeOfShape == SHAPE_TYPE_TRIANGLE)
- {
- writer = this->ciao_context_->get_connection_info_write_tr_data ();
- }
- else if (this->TypeOfShape == SHAPE_TYPE_CIRCLE)
- {
- writer = this->ciao_context_->get_connection_info_write_cl_data ();
- }
- if (::CORBA::is_nil (writer.in ()))
- {
- ACE_ERROR ((LM_ERROR, "Sender_exec_i::tick () - "
- "ERROR: Unable to get connection to writer\n"));
- return;
- }
-
- if (this->TypeOfShape == SHAPE_TYPE_SQUARE)
- {
- this->TypeOfShape = SHAPE_TYPE_TRIANGLE;
- writer->write_one (*square_, ::DDS::HANDLE_NIL);
- ACE_DEBUG ((LM_DEBUG,
- ACE_TEXT ("UPDATED Shape_info Square for <%C> %u:%u:%u\n"),
- this->square_->color.in (),
- this->square_->x,
- this->square_->y,
- this->square_->shapesize));
- }
- else if (this->TypeOfShape == SHAPE_TYPE_TRIANGLE)
- {
- this->TypeOfShape = SHAPE_TYPE_CIRCLE;
- writer->write_one (*triangle_, ::DDS::HANDLE_NIL);
- ACE_DEBUG ((LM_DEBUG,
- ACE_TEXT ("UPDATED Shape_info Triangle for <%C> %u:%u:%u\n"),
- this->triangle_->color.in (),
- this->triangle_->x,
- this->triangle_->y,
- this->triangle_->shapesize));
- }
- else if (this->TypeOfShape == SHAPE_TYPE_CIRCLE)
- {
- this->TypeOfShape = SHAPE_TYPE_SQUARE;
- writer->write_one (*circle_, ::DDS::HANDLE_NIL);
- ACE_DEBUG ((LM_DEBUG,
- ACE_TEXT ("UPDATED Shape_info Circle for <%C> %u:%u:%u\n"),
- this->circle_->color.in (),
- this->circle_->x,
- this->circle_->y,
- this->circle_->shapesize));
- }
- }
- catch (const CCM_DDS::NonExistent& )
- {
- ACE_ERROR ((LM_ERROR,
- ACE_TEXT ("Shape_info for <%C> not updated: <%C> didn't exist.\n"),
- this->square_->color.in (), this->square_->color.in ()));
- }
- catch (const CCM_DDS::InternalError& )
- {
- ACE_ERROR ((LM_ERROR,
- ACE_TEXT ("Internal Error while updating Shape_info for <%C>.\n"),
- this->square_->color.in ()));
- }
- }
-
- // Component attributes and port operations.
-
- ::CORBA::ULong
- Sender_exec_i::rate (void)
- {
- return this->rate_;
- }
-
- void
- Sender_exec_i::rate (
- const ::CORBA::ULong rate)
- {
- this->rate_ = rate;
- }
-
- ::CORBA::UShort
- Sender_exec_i::max_x (void)
- {
- return this->max_x_;
- }
-
- void
- Sender_exec_i::max_x (
- const ::CORBA::UShort max_x)
- {
- this->max_x_ = max_x;
- }
-
- ::CORBA::UShort
- Sender_exec_i::max_y (void)
- {
- return this->max_y_;
- }
-
- void
- Sender_exec_i::max_y (
- const ::CORBA::UShort max_y)
- {
- this->max_y_ = max_y;
- }
-
- ::CORBA::UShort
- Sender_exec_i::max_size (void)
- {
- return this->max_size_;
- }
-
- void
- Sender_exec_i::max_size (
- const ::CORBA::UShort max_size)
- {
- this->max_size_ = max_size;
- }
-
- ::CORBA::Boolean
- Sender_exec_i::resize_shape (void)
- {
- return this->resize_shape_;
- }
-
- void
- Sender_exec_i::resize_shape (
- const ::CORBA::Boolean resize_shape)
- {
- this->resize_shape_ = resize_shape;
- }
-
-
- void
- Sender_exec_i::start (void)
- {
- // calculate the interval time
- long const usec = 1000000 / this->rate_;
-
- if (this->reactor ()->schedule_timer (
- this->ticker_,
- 0,
- ACE_Time_Value (0, usec),
- ACE_Time_Value (0, usec)) == -1)
- {
- ACE_ERROR ((LM_ERROR, ACE_TEXT ("Sender_exec_i::start : ")
- ACE_TEXT ("Error scheduling timer")));
- }
- }
-
- void
- Sender_exec_i::stop (void)
- {
- try
- {
- this->reactor ()->cancel_timer (this->ticker_);
- ACE_DEBUG ((LM_DEBUG,
- ACE_TEXT ("Sender_exec_i::stop : Timer canceled.\n")));
- delete this->ticker_;
- delete this->square_;
- delete this->triangle_;
- delete this->circle_;
- }
- catch (...)
- {
- ACE_ERROR ((LM_ERROR, "Sender_exec_i::stop - "
- "ERROR: unexpected exception caught while shutting down.\n"));
- }
- }
-
- // Operations from Components::SessionComponent.
- void
- Sender_exec_i::set_session_context (
- ::Components::SessionContext_ptr ctx)
- {
- this->ciao_context_ =
- ::Shapes::CCM_Sender_Context::_narrow (ctx);
-
- if ( ::CORBA::is_nil (this->ciao_context_.in ()))
- {
- throw ::CORBA::INTERNAL ();
- }
- }
-
- void
- Sender_exec_i::configuration_complete (void)
- {
- }
-
- void
- Sender_exec_i::ccm_activate (void)
- {
- this->square_->x = ACE_OS::rand () % this->max_x_;
- this->square_->y = ACE_OS::rand () % this->max_y_;
- this->square_->shapesize = max_size_;
- this->square_->color = CORBA::string_dup("GREEN");
-
- this->triangle_->x = ACE_OS::rand () % this->max_x_;
- this->triangle_->y = ACE_OS::rand () % this->max_y_;
- this->triangle_->shapesize = max_size_;
- this->triangle_->color = CORBA::string_dup("YELLOW");
-
- this->circle_->x = ACE_OS::rand () % this->max_x_;
- this->circle_->y = ACE_OS::rand () % this->max_y_;
- this->circle_->shapesize = max_size_;
- this->circle_->color = CORBA::string_dup("BLUE");
-
- this->start ();
- }
-
- void
- Sender_exec_i::ccm_passivate (void)
- {
- this->stop ();
- }
-
- void
- Sender_exec_i::ccm_remove (void)
- {
- /* Your code here. */
- }
-
- extern "C" ::Components::EnterpriseComponent_ptr
- create_Shape_Sender_Impl (void)
- {
-
- ::Components::EnterpriseComponent_ptr retval =
- ::Components::EnterpriseComponent::_nil ();
-
- ACE_NEW_NORETURN (
- retval,
- Sender_exec_i);
-
- return retval;
- }
-}