summaryrefslogtreecommitdiff
path: root/TAO/orbsvcs
diff options
context:
space:
mode:
authornaga <naga@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1998-05-02 00:53:31 +0000
committernaga <naga@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1998-05-02 00:53:31 +0000
commitc511abf5dcea31488e2fb32e066f4fa5a994a61b (patch)
tree4064fd79981c5c10f7696756c936fcce9bbb3b04 /TAO/orbsvcs
parent32f8073a1685071035421bd3103b26870973d3fc (diff)
downloadATCD-c511abf5dcea31488e2fb32e066f4fa5a994a61b.tar.gz
*** empty log message ***
Diffstat (limited to 'TAO/orbsvcs')
-rw-r--r--TAO/orbsvcs/orbsvcs/AV/AVStreams_i.cpp12
-rw-r--r--TAO/orbsvcs/orbsvcs/AV/AVStreams_i.h8
-rw-r--r--TAO/orbsvcs/orbsvcs/AV/Endpoint_Strategy.cpp60
-rw-r--r--TAO/orbsvcs/orbsvcs/AV/Endpoint_Strategy.h26
4 files changed, 75 insertions, 31 deletions
diff --git a/TAO/orbsvcs/orbsvcs/AV/AVStreams_i.cpp b/TAO/orbsvcs/orbsvcs/AV/AVStreams_i.cpp
index eee2efa2550..7798f18313e 100644
--- a/TAO/orbsvcs/orbsvcs/AV/AVStreams_i.cpp
+++ b/TAO/orbsvcs/orbsvcs/AV/AVStreams_i.cpp
@@ -17,6 +17,14 @@
#include "orbsvcs/AV/AVStreams_i.h"
// ----------------------------------------------------------------------
+// AV_Null_MediaCtrl
+// ----------------------------------------------------------------------
+AV_Null_MediaCtrl::AV_Null_MediaCtrl (void)
+{
+}
+
+
+// ----------------------------------------------------------------------
// TAO_Basic_StreamCtrl
// ----------------------------------------------------------------------
@@ -434,7 +442,7 @@ TAO_StreamEndPoint::~TAO_StreamEndPoint (void)
TAO_Client_StreamEndPoint::TAO_Client_StreamEndPoint (void)
{
ACE_DEBUG ((LM_DEBUG,
- "\n(%P|%t) TAO_Client_StreamEndPoint::TAO_Client_StreamEndPoint: created"));
+ "(%P|%t) TAO_Client_StreamEndPoint::TAO_Client_StreamEndPoint: created\n"));
}
CORBA::Boolean
@@ -542,7 +550,7 @@ TAO_Server_StreamEndPoint::~TAO_Server_StreamEndPoint (void)
TAO_VDev::TAO_VDev (void)
{
ACE_DEBUG ((LM_DEBUG,
- "\n(%P|%t) TAO_VDev::TAO_VDev: created"));
+ "(%P|%t) TAO_VDev::TAO_VDev: created\n"));
}
// StreamCtrl will call this to give us a reference to itself, and to
diff --git a/TAO/orbsvcs/orbsvcs/AV/AVStreams_i.h b/TAO/orbsvcs/orbsvcs/AV/AVStreams_i.h
index 7f81cf0da48..51cd804e0ad 100644
--- a/TAO/orbsvcs/orbsvcs/AV/AVStreams_i.h
+++ b/TAO/orbsvcs/orbsvcs/AV/AVStreams_i.h
@@ -26,6 +26,14 @@
#include "ace/Process.h"
#include "orbsvcs/CosNamingC.h"
#include "orbsvcs/AV/Endpoint_Strategy.h"
+#include "orbsvcs/Null_MediaCtrlS.h"
+
+class TAO_ORBSVCS_Export AV_Null_MediaCtrl
+ : public virtual POA_Null_MediaCtrl
+{
+public:
+ AV_Null_MediaCtrl (void);
+};
class TAO_ORBSVCS_Export TAO_Basic_StreamCtrl
: public virtual POA_AVStreams::Basic_StreamCtrl
diff --git a/TAO/orbsvcs/orbsvcs/AV/Endpoint_Strategy.cpp b/TAO/orbsvcs/orbsvcs/AV/Endpoint_Strategy.cpp
index e1e4a91917a..51a7751b583 100644
--- a/TAO/orbsvcs/orbsvcs/AV/Endpoint_Strategy.cpp
+++ b/TAO/orbsvcs/orbsvcs/AV/Endpoint_Strategy.cpp
@@ -318,7 +318,7 @@ TAO_AV_Endpoint_Reactive_Strategy <T_StreamEndpoint, T_VDev, T_MediaCtrl>::activ
this->orb_manager_->activate_under_child_poa ("VDev",
- this->vdev_,
+ vdev,
env);
TAO_CHECK_ENV_RETURN (env, -1);
return 0;
@@ -339,7 +339,8 @@ TAO_AV_Endpoint_Reactive_Strategy <T_StreamEndpoint, T_VDev, T_MediaCtrl>::activ
TAO_CHECK_ENV_RETURN (env, -1);
CORBA::Any anyval;
- anyval <<= this->orb_manager_->orb ()->object_to_string (media_ctrl->_this (env));
+ anyval <<= this->orb_manager_->orb ()->object_to_string (media_ctrl->_this (env),
+ env);
TAO_CHECK_ENV_RETURN (env, -1);
this->vdev_->define_property ("Related_MediaCtrl",
@@ -424,7 +425,7 @@ TAO_AV_Endpoint_Reactive_Strategy_A <T_StreamEndpoint, T_VDev, T_MediaCtrl>::act
TAO_CHECK_ENV_RETURN (env, -1);
this->orb_manager_->activate_under_child_poa ("Stream_Endpoint_A",
- this->stream_endpoint_a_,
+ stream_endpoint_a,
env);
TAO_CHECK_ENV_RETURN (env, -1);
return 0;
@@ -482,7 +483,7 @@ TAO_AV_Endpoint_Reactive_Strategy_B<T_StreamEndpoint, T_VDev, T_MediaCtrl>::crea
template <class T_StreamEndpoint_B, class T_VDev , class T_MediaCtrl>
TAO_AV_Child_Process <T_StreamEndpoint_B, T_VDev, T_MediaCtrl>::TAO_AV_Child_Process ()
- :stream_endpoint_name_ (0)
+ : stream_endpoint_name_ (0)
{
}
@@ -533,19 +534,31 @@ TAO_AV_Child_Process <T_StreamEndpoint, T_VDev, T_MediaCtrl>::activate_objects
env);
TAO_CHECK_ENV_RETURN (env, -1);
+ ACE_NEW_RETURN (this->stream_endpoint_,
+ T_StreamEndpoint,
+ -1);
+
+ ACE_NEW_RETURN (this->vdev_,
+ T_VDev,
+ -1);
+
+ ACE_NEW_RETURN (this->media_ctrl_,
+ T_MediaCtrl,
+ -1);
+
this->orb_manager_.activate_under_child_poa ("Stream_Endpoint",
- &this->stream_endpoint_,
+ this->stream_endpoint_,
env);
TAO_CHECK_ENV_RETURN (env, -1);
this->orb_manager_.activate_under_child_poa ("VDev",
- &this->vdev_,
+ this->vdev_,
env);
TAO_CHECK_ENV_RETURN (env, -1);
this->orb_manager_.activate_under_child_poa ("MediaCtrl",
- &this->media_control_,
+ this->media_ctrl_,
env);
TAO_CHECK_ENV_RETURN (env, -1);
return 0;
@@ -580,7 +593,8 @@ TAO_AV_Child_Process <T_StreamEndpoint, T_VDev, T_MediaCtrl>::register_vdev (CO
vdev_name [0].id = CORBA::string_dup ("VDev");
CORBA::Any media_ctrl_property;
- media_ctrl_property <<= this->orb_manager_.orb ()->object_to_string (this->media_ctrl_->_this (env));
+ media_ctrl_property <<= this->orb_manager_.orb ()->object_to_string (this->media_ctrl_->_this (env),
+ env);
this->vdev_->define_property ("Related_MediaCtrl",
media_ctrl_property,
env);
@@ -588,14 +602,14 @@ TAO_AV_Child_Process <T_StreamEndpoint, T_VDev, T_MediaCtrl>::register_vdev (CO
// Register the vdev with the naming server.
this->naming_context_->bind (vdev_name,
- this->vdev_._this (env),
+ this->vdev_->_this (env),
env);
if (env.exception () != 0)
{
env.clear ();
this->naming_context_->rebind (vdev_name,
- this->vdev_._this (env),
+ this->vdev_->_this (env),
env);
TAO_CHECK_ENV_RETURN (env, -1);
}
@@ -663,10 +677,6 @@ TAO_AV_Child_Process <T_StreamEndpoint_B, T_VDev, T_MediaCtrl>::release_semapho
return 0;
}
-// ----------------------------------------------------------------------
-// TAO_AV_Child_Process_A
-// ----------------------------------------------------------------------
-
template <class T_StreamEndpoint, class T_VDev , class T_MediaCtrl>
int
TAO_AV_Child_Process <T_StreamEndpoint, T_VDev, T_MediaCtrl>::register_stream_endpoint (CORBA::Environment &env)
@@ -678,23 +688,39 @@ TAO_AV_Child_Process <T_StreamEndpoint, T_VDev, T_MediaCtrl>::register_stream_e
Stream_Endpoint_Name.length (1);
Stream_Endpoint_Name [0].id = CORBA::string_dup (this->stream_endpoint_name_);
+ ACE_DEBUG ((LM_DEBUG,
+ "(%P|%t) The string is %s,%s\n",
+ this->stream_endpoint_name_,
+ Stream_Endpoint_Name [0]));
+
// Register the stream endpoint object with the naming server.
this->naming_context_->bind (Stream_Endpoint_Name,
- this->stream_endpoint_._this (env),
+ this->stream_endpoint_->_this (env),
env);
if (env.exception () != 0)
{
env.clear ();
this->naming_context_->rebind (Stream_Endpoint_Name,
- this->stream_endpoint_._this (env),
+ this->stream_endpoint_->_this (env),
env);
TAO_CHECK_ENV_RETURN (env, -1);
}
}
+template <class T_StreamEndpoint, class T_VDev , class T_MediaCtrl>
+TAO_AV_Child_Process <T_StreamEndpoint, T_VDev, T_MediaCtrl>::~TAO_AV_Child_Process ()
+{
+ if (this->stream_endpoint_ != 0)
+ delete this->stream_endpoint_;
+ if (this->vdev_ != 0)
+ delete this->vdev_;
+ if (this->media_ctrl_ != 0)
+ delete this->media_ctrl_;
+}
+
// ----------------------------------------------------------------------
// TAO_AV_Child_Process_A
// ----------------------------------------------------------------------
@@ -706,7 +732,7 @@ TAO_AV_Child_Process_A <T_StreamEndpoint, T_VDev, T_MediaCtrl>::TAO_AV_Child_Pr
}
// ----------------------------------------------------------------------
-// TAO_AV_Child_Process_A
+// TAO_AV_Child_Process_B
// ----------------------------------------------------------------------
template <class T_StreamEndpoint, class T_VDev , class T_MediaCtrl>
diff --git a/TAO/orbsvcs/orbsvcs/AV/Endpoint_Strategy.h b/TAO/orbsvcs/orbsvcs/AV/Endpoint_Strategy.h
index 88b7ebfb1cd..6adf028f5f1 100644
--- a/TAO/orbsvcs/orbsvcs/AV/Endpoint_Strategy.h
+++ b/TAO/orbsvcs/orbsvcs/AV/Endpoint_Strategy.h
@@ -56,7 +56,7 @@ public:
// ----------------------------------------------------------------------
class TAO_ORBSVCS_Export TAO_AV_Endpoint_Process_Strategy
- : public virtual TAO_AV_Endpoint_Strategy
+ : public TAO_AV_Endpoint_Strategy
// = DESCRIPTION
// Process-based strategy for creating endpoints
// Abstract base class.
@@ -95,7 +95,7 @@ class TAO_ORBSVCS_Export TAO_AV_Endpoint_Process_Strategy
// ----------------------------------------------------------------------
class TAO_ORBSVCS_Export TAO_AV_Endpoint_Process_Strategy_A
- : public virtual TAO_AV_Endpoint_Process_Strategy
+ : public TAO_AV_Endpoint_Process_Strategy
// = DESCRIPTION
// Process-based strategy to create "A" type endpoints
{
@@ -117,7 +117,7 @@ class TAO_ORBSVCS_Export TAO_AV_Endpoint_Process_Strategy_A
// ----------------------------------------------------------------------
class TAO_ORBSVCS_Export TAO_AV_Endpoint_Process_Strategy_B
- : public virtual TAO_AV_Endpoint_Process_Strategy
+ : public TAO_AV_Endpoint_Process_Strategy
// = DESCRIPTION
// Process-based strategy to create "B" type endpoints
{
@@ -138,7 +138,7 @@ class TAO_ORBSVCS_Export TAO_AV_Endpoint_Process_Strategy_B
// ----------------------------------------------------------------------
template <class T_StreamEndpoint, class T_VDev , class T_MediaCtrl>
class TAO_ORBSVCS_Export TAO_AV_Endpoint_Reactive_Strategy
- : public virtual TAO_AV_Endpoint_Strategy
+ : public TAO_AV_Endpoint_Strategy
// = DESCRIPTION
// Reactive strategy
{
@@ -148,7 +148,7 @@ class TAO_ORBSVCS_Export TAO_AV_Endpoint_Reactive_Strategy
virtual int activate (void);
- virtual int activate_stream_endpoint (CORBA::Environment &env);
+ virtual int activate_stream_endpoint (CORBA::Environment &env) = 0;
virtual int activate_vdev (CORBA::Environment &env);
@@ -173,7 +173,7 @@ class TAO_ORBSVCS_Export TAO_AV_Endpoint_Reactive_Strategy
template <class T_StreamEndpoint, class T_VDev , class T_MediaCtrl>
class TAO_ORBSVCS_Export TAO_AV_Endpoint_Reactive_Strategy_A
- : public virtual TAO_AV_Endpoint_Reactive_Strategy<T_StreamEndpoint, T_VDev , T_MediaCtrl>
+ : public TAO_AV_Endpoint_Reactive_Strategy<T_StreamEndpoint, T_VDev , T_MediaCtrl>
// = DESCRIPTION
// Reactive strategy
{
@@ -193,7 +193,7 @@ class TAO_ORBSVCS_Export TAO_AV_Endpoint_Reactive_Strategy_A
// ----------------------------------------------------------------------
template <class T_StreamEndpoint, class T_Vdev , class T_MediaCtrl>
class TAO_ORBSVCS_Export TAO_AV_Endpoint_Reactive_Strategy_B
- : public virtual TAO_AV_Endpoint_Reactive_Strategy
+ : public TAO_AV_Endpoint_Reactive_Strategy
// = DESCRIPTION
// Reactive strategy
{
@@ -216,6 +216,8 @@ class TAO_ORBSVCS_Export TAO_AV_Child_Process
{
public:
TAO_AV_Child_Process ();
+ ~TAO_AV_Child_Process ();
+
int init (int argc, char **argv);
int run (ACE_Time_Value *tv = 0);
@@ -238,13 +240,13 @@ public:
CosNaming::NamingContext_var naming_context_;
// The root Naming Context of the TAO naming service
- T_StreamEndpoint stream_endpoint_;
+ T_StreamEndpoint *stream_endpoint_;
// The stream endpoint member
- T_VDev vdev_;
+ T_VDev *vdev_;
// The virtual device
- T_MediaCtrl media_control_;
+ T_MediaCtrl *media_ctrl_;
// Media controller
};
@@ -252,7 +254,7 @@ public:
template <class T_StreamEndpoint, class T_VDev , class T_MediaCtrl>
class TAO_ORBSVCS_Export TAO_AV_Child_Process_A
- : public virtual TAO_AV_Child_Process <T_StreamEndpoint, T_VDev, T_MediaCtrl>
+ : public TAO_AV_Child_Process <T_StreamEndpoint, T_VDev, T_MediaCtrl>
// = DESCRIPTION
// Helper class for the child process created in TAO_AV_Child_Process
{
@@ -265,7 +267,7 @@ public:
template <class T_StreamEndpoint, class T_VDev , class T_MediaCtrl>
class TAO_ORBSVCS_Export TAO_AV_Child_Process_B
- : public virtual TAO_AV_Child_Process <T_StreamEndpoint, T_VDev, T_MediaCtrl>
+ : public TAO_AV_Child_Process <T_StreamEndpoint, T_VDev, T_MediaCtrl>
// = DESCRIPTION
// Helper class for the child process created in TAO_AV_Child_Process
{