summaryrefslogtreecommitdiff
path: root/modules/CIAO/examples/BasicSP/BMDevice
diff options
context:
space:
mode:
Diffstat (limited to 'modules/CIAO/examples/BasicSP/BMDevice')
-rw-r--r--modules/CIAO/examples/BasicSP/BMDevice/BMDevice.cidl20
-rw-r--r--modules/CIAO/examples/BasicSP/BMDevice/BMDevice.idl30
-rw-r--r--modules/CIAO/examples/BasicSP/BMDevice/BMDevice.mpc66
-rw-r--r--modules/CIAO/examples/BasicSP/BMDevice/BMDeviceEI.idl30
-rw-r--r--modules/CIAO/examples/BasicSP/BMDevice/BMDevice_exec.cpp164
-rw-r--r--modules/CIAO/examples/BasicSP/BMDevice/BMDevice_exec.h130
-rw-r--r--modules/CIAO/examples/BasicSP/BMDevice/BMDevice_exec_export.h58
-rw-r--r--modules/CIAO/examples/BasicSP/BMDevice/BMDevice_stub_export.h58
-rw-r--r--modules/CIAO/examples/BasicSP/BMDevice/BMDevice_svnt_export.h58
9 files changed, 614 insertions, 0 deletions
diff --git a/modules/CIAO/examples/BasicSP/BMDevice/BMDevice.cidl b/modules/CIAO/examples/BasicSP/BMDevice/BMDevice.cidl
new file mode 100644
index 00000000000..94919f15af0
--- /dev/null
+++ b/modules/CIAO/examples/BasicSP/BMDevice/BMDevice.cidl
@@ -0,0 +1,20 @@
+//$Id$
+
+#ifndef BMDEVICE_CIDL
+#define BMDEVICE_CIDL
+
+#include "../BasicSP.idl"
+#include "BMDevice.idl"
+
+composition session BMDevice_Impl
+{
+ home executor BMDeviceHome_Exec
+ {
+ implements BasicSP::BMDeviceHome;
+ manages BMDevice_Exec;
+ };
+};
+
+#endif /* BMDEVICE_CIDL */
+
+
diff --git a/modules/CIAO/examples/BasicSP/BMDevice/BMDevice.idl b/modules/CIAO/examples/BasicSP/BMDevice/BMDevice.idl
new file mode 100644
index 00000000000..86477c12f8b
--- /dev/null
+++ b/modules/CIAO/examples/BasicSP/BMDevice/BMDevice.idl
@@ -0,0 +1,30 @@
+//$Id$
+//=============================================================================
+/**
+ * @file BMDevice.idl
+ *
+ * Definition of the BMDevice component
+ *
+ * @author Balachandran Natarajan <bala@dre.vanderbilt.edu>
+ */
+//=============================================================================
+#ifndef CIAO_BMDEVICE_IDL
+#define CIAO_BMDEVICE_IDL
+
+#include "../BasicSP.idl"
+
+module BasicSP
+{
+ component BMDevice
+ {
+ provides ReadData data_read;
+ publishes DataAvailable data_available;
+ consumes TimeOut timeout;
+ };
+
+ home BMDeviceHome manages BMDevice
+ {
+ };
+};
+
+#endif /*CIAO_BMDEVICE_IDL */
diff --git a/modules/CIAO/examples/BasicSP/BMDevice/BMDevice.mpc b/modules/CIAO/examples/BasicSP/BMDevice/BMDevice.mpc
new file mode 100644
index 00000000000..90212cc63ec
--- /dev/null
+++ b/modules/CIAO/examples/BasicSP/BMDevice/BMDevice.mpc
@@ -0,0 +1,66 @@
+// $Id$
+
+project(BMDevice_DnC_stub): ciao_client_dnc {
+ avoids += ace_for_tao
+ after += BasicSP_DnC_stub
+ sharedname = BMDevice_stub
+
+ idlflags += -Wb,stub_export_macro=BMDEVICE_STUB_Export -Wb,stub_export_include=BMDevice_stub_export.h -Wb,skel_export_macro=BMDEVICE_SVNT_Export -Wb,skel_export_include=BMDevice_svnt_export.h
+ libpaths += ..
+ libs += BasicSP_stub
+ dynamicflags = BMDEVICE_STUB_BUILD_DLL
+
+ IDL_Files {
+ BMDevice.idl
+ }
+
+ Source_Files {
+ BMDeviceC.cpp
+ }
+}
+
+project(BMDevice_DnC_svnt) : ciao_servant_dnc {
+ avoids += ace_for_tao
+ after += BMDevice_DnC_stub BasicSP_DnC_stub
+ sharedname = BMDevice_svnt
+ libs += BMDevice_stub BasicSP_stub BasicSP_svnt
+ libpaths += ..
+ idlflags += -Wb,export_macro=BMDEVICE_SVNT_Export -Wb,export_include=BMDevice_svnt_export.h
+ dynamicflags = BMDEVICE_SVNT_BUILD_DLL
+
+ CIDL_Files {
+ BMDevice.cidl
+ }
+
+ IDL_Files {
+ BMDeviceE.idl
+ }
+
+ Source_Files {
+ BMDeviceEC.cpp
+ BMDeviceS.cpp
+ BMDevice_svnt.cpp
+ }
+}
+
+
+project(BMDevice_DnC_exec) : ciao_component_dnc {
+ avoids += ace_for_tao
+ after += BMDevice_DnC_svnt
+ sharedname = BMDevice_exec
+ libs += BMDevice_stub BMDevice_svnt BasicSP_stub BasicSP_svnt
+ libpaths += ..
+ idlflags += -Wb,export_macro=BMDEVICE_EXEC_Export -Wb,export_include=BMDevice_exec_export.h
+ dynamicflags = BMDEVICE_EXEC_BUILD_DLL
+
+ IDL_Files {
+ BMDeviceEI.idl
+ }
+
+ Source_Files {
+ BMDeviceES.cpp
+ BMDeviceEIC.cpp
+ BMDeviceEIS.cpp
+ BMDevice_exec.cpp
+ }
+}
diff --git a/modules/CIAO/examples/BasicSP/BMDevice/BMDeviceEI.idl b/modules/CIAO/examples/BasicSP/BMDevice/BMDeviceEI.idl
new file mode 100644
index 00000000000..18a4ad9eaa4
--- /dev/null
+++ b/modules/CIAO/examples/BasicSP/BMDevice/BMDeviceEI.idl
@@ -0,0 +1,30 @@
+// $Id$
+//=============================================================================
+/**
+ * @file BMDeviceEI.idl
+ *
+ * Definition of the BMDevice component implementation.
+ *
+ * @author Nanbor Wang <nanbor@cs.wustl.edu>
+ */
+//=============================================================================
+#ifndef CIAO_BMDEVICEEI_IDL
+#define CIAO_BMDEVICEEI_IDL
+
+#include "BMDeviceE.idl"
+
+module BasicSP
+{
+ /**
+ * @interface BMDevice_Exec
+ */
+ local interface BMDevice_Exec :
+ CCM_BMDevice,
+ CCM_ReadData,
+ Components::SessionComponent
+ {
+ };
+
+};
+
+#endif /* CIAO_BMDEVICEEI_IDL */
diff --git a/modules/CIAO/examples/BasicSP/BMDevice/BMDevice_exec.cpp b/modules/CIAO/examples/BasicSP/BMDevice/BMDevice_exec.cpp
new file mode 100644
index 00000000000..5f401e2de5d
--- /dev/null
+++ b/modules/CIAO/examples/BasicSP/BMDevice/BMDevice_exec.cpp
@@ -0,0 +1,164 @@
+// $Id$
+
+#include "ciao/CIAO_common.h"
+#include "BMDevice_exec.h"
+
+#define DISPLACEMENT 256
+
+/// Default constructor.
+MyImpl::BMDevice_exec_i::BMDevice_exec_i (void)
+ : str_ ("BM DEVICE DATA")
+{
+
+}
+
+/// Default destructor.
+MyImpl::BMDevice_exec_i::~BMDevice_exec_i ()
+{
+}
+
+BasicSP::CCM_ReadData_ptr
+MyImpl::BMDevice_exec_i::get_data_read ()
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return BasicSP::CCM_ReadData::_duplicate (this);
+}
+
+void
+MyImpl::BMDevice_exec_i::push_timeout (BasicSP::TimeOut *)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Nitify others
+ BasicSP::DataAvailable_var event = new OBV_BasicSP::DataAvailable;
+
+ if (CIAO::debug_level () > 0)
+ {
+ ACE_DEBUG ((LM_DEBUG,
+ "BMDevice, received a timeout from EC \n"));
+ }
+
+ this->context_->push_data_available (event);
+}
+
+char *
+MyImpl::BMDevice_exec_i::data_read ()
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return CORBA::string_dup (this->str_);
+}
+
+char *
+MyImpl::BMDevice_exec_i::get_data ()
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->data_read ();
+}
+
+// Operations from Components::SessionComponent
+void
+MyImpl::BMDevice_exec_i::set_session_context (
+ Components::SessionContext_ptr ctx
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException,
+ Components::CCMException))
+{
+ if (CIAO::debug_level () > 0)
+ {
+ ACE_DEBUG ((LM_DEBUG,
+ "MyImpl::BMDevice_exec_i::set_session_context\n"));
+ }
+
+ this->context_ =
+ BasicSP::CCM_BMDevice_Context::_narrow (ctx);
+
+ if (CORBA::is_nil (this->context_.in ()))
+ {
+ throw CORBA::INTERNAL ();
+ }
+ // Urm, we actually discard exceptions thown from this operation.
+}
+
+void
+MyImpl::BMDevice_exec_i::ciao_preactivate ()
+ ACE_THROW_SPEC ((CORBA::SystemException,
+ Components::CCMException))
+{
+}
+
+void
+MyImpl::BMDevice_exec_i::ccm_activate ()
+ ACE_THROW_SPEC ((CORBA::SystemException,
+ Components::CCMException))
+{
+ if (CIAO::debug_level () > 0)
+ {
+ ACE_DEBUG ((LM_DEBUG,
+ "MyImpl::BMDevice_exec_i::ccm_activate\n"));
+ }
+
+}
+
+void
+MyImpl::BMDevice_exec_i::ciao_postactivate ()
+ ACE_THROW_SPEC ((CORBA::SystemException,
+ Components::CCMException))
+{
+}
+
+void
+MyImpl::BMDevice_exec_i::ccm_passivate ()
+ ACE_THROW_SPEC ((CORBA::SystemException,
+ Components::CCMException))
+{
+ if (CIAO::debug_level () > 0)
+ {
+ ACE_DEBUG ((LM_DEBUG,
+ "MyImpl::BMDevice_exec_i::ccm_passivate\n"));
+ }
+}
+
+void
+MyImpl::BMDevice_exec_i::ccm_remove ()
+ ACE_THROW_SPEC ((CORBA::SystemException,
+ Components::CCMException))
+{
+ if (CIAO::debug_level () > 0)
+ {
+ ACE_DEBUG ((LM_DEBUG,
+ "MyImpl::BMDevice_exec_i::ccm_remove\n"));
+ }
+}
+
+/// Default ctor.
+MyImpl::BMDeviceHome_exec_i::BMDeviceHome_exec_i ()
+{
+}
+
+/// Default dtor.
+MyImpl::BMDeviceHome_exec_i::~BMDeviceHome_exec_i ()
+{
+}
+
+// Explicit home operations.
+
+// Implicit home operations.
+
+::Components::EnterpriseComponent_ptr
+MyImpl::BMDeviceHome_exec_i::create ()
+ ACE_THROW_SPEC ((CORBA::SystemException,
+ Components::CCMException))
+{
+ Components::EnterpriseComponent_ptr tmp= 0;
+ ACE_NEW_THROW_EX (tmp,
+ MyImpl::BMDevice_exec_i,
+ CORBA::NO_MEMORY ());
+
+ return tmp;
+}
+
+
+extern "C" BMDEVICE_EXEC_Export ::Components::HomeExecutorBase_ptr
+createBMDeviceHome_Impl (void)
+{
+ return new MyImpl::BMDeviceHome_exec_i;
+}
diff --git a/modules/CIAO/examples/BasicSP/BMDevice/BMDevice_exec.h b/modules/CIAO/examples/BasicSP/BMDevice/BMDevice_exec.h
new file mode 100644
index 00000000000..6ad460faee4
--- /dev/null
+++ b/modules/CIAO/examples/BasicSP/BMDevice/BMDevice_exec.h
@@ -0,0 +1,130 @@
+// $Id$
+
+// ================================================================
+/**
+ * @file BMDevice_exec.h
+ *
+ * Header file for the actual BMDevice and BMDeviceHome component
+ * implementations. These classes are the implementations of local
+ * interfaces defined in BMDeviceEI.idl.
+ *
+ * @author Balachandran Natarajan <bala@dre.vanderbilt.edu>
+ */
+// ================================================================
+
+#ifndef CIAO_BMDEVICE_EXEC_H
+#define CIAO_BMDEVICE_EXEC_H
+
+#include "BMDeviceEIC.h"
+#include "tao/LocalObject.h"
+
+namespace MyImpl
+{
+ /**
+ * @class BMDEVICE_exec_i
+ *
+ * An example RateGen executor implementation class.
+ */
+ class BMDEVICE_EXEC_Export BMDevice_exec_i :
+ public virtual BasicSP::BMDevice_Exec,
+ public virtual TAO_Local_RefCounted_Object
+ {
+ public:
+ /// Default constructor.
+ BMDevice_exec_i ();
+
+ /// Default destructor.
+ ~BMDevice_exec_i ();
+
+ // Operations from BasicSP::BMDevice
+
+ virtual BasicSP::CCM_ReadData_ptr
+ get_data_read ()
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual void
+ push_timeout (BasicSP::TimeOut *ev)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ // Operations from BasicSP::position
+
+ virtual char *
+ data_read ()
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char *
+ get_data ()
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ // Operations from Components::SessionComponent
+
+ virtual void
+ set_session_context (Components::SessionContext_ptr ctx)
+ ACE_THROW_SPEC ((CORBA::SystemException,
+ Components::CCMException));
+
+ virtual void
+ ciao_preactivate ()
+ ACE_THROW_SPEC ((CORBA::SystemException,
+ Components::CCMException));
+
+ virtual void
+ ccm_activate ()
+ ACE_THROW_SPEC ((CORBA::SystemException,
+ Components::CCMException));
+ virtual void
+ ciao_postactivate ()
+ ACE_THROW_SPEC ((CORBA::SystemException,
+ Components::CCMException));
+
+
+ virtual void
+ ccm_passivate ()
+ ACE_THROW_SPEC ((CORBA::SystemException,
+ Components::CCMException));
+
+ virtual void
+ ccm_remove ()
+ ACE_THROW_SPEC ((CORBA::SystemException,
+ Components::CCMException));
+ protected:
+ const char *str_;
+
+ /// Copmponent specific context
+ BasicSP::CCM_BMDevice_Context_var context_;
+ };
+
+ /**
+ * @class BMDeviceHome_exec_i
+ *
+ * BMDevice home executor implementation class.
+ */
+ class BMDEVICE_EXEC_Export BMDeviceHome_exec_i :
+ public virtual BasicSP::CCM_BMDeviceHome,
+ public virtual TAO_Local_RefCounted_Object
+ {
+ public:
+ /// Default ctor.
+ BMDeviceHome_exec_i ();
+
+ /// Default dtor.
+ ~BMDeviceHome_exec_i ();
+
+ // Explicit home operations.
+
+ // Implicit home operations.
+
+ virtual ::Components::EnterpriseComponent_ptr
+ create ()
+ ACE_THROW_SPEC ((CORBA::SystemException,
+ Components::CCMException));
+ };
+
+}
+
+// Executor DLL entry point. CIAO's deployment and assembly framework
+// invokes this function on the resulting DLL to get the home executor.
+extern "C" BMDEVICE_EXEC_Export ::Components::HomeExecutorBase_ptr
+createBMDeviceHome_Impl (void);
+
+#endif /* CIAO_BMDEVICE_EXEC_H*/
diff --git a/modules/CIAO/examples/BasicSP/BMDevice/BMDevice_exec_export.h b/modules/CIAO/examples/BasicSP/BMDevice/BMDevice_exec_export.h
new file mode 100644
index 00000000000..8a5296ac320
--- /dev/null
+++ b/modules/CIAO/examples/BasicSP/BMDevice/BMDevice_exec_export.h
@@ -0,0 +1,58 @@
+
+// -*- C++ -*-
+// $Id$
+// Definition for Win32 Export directives.
+// This file is generated automatically by generate_export_file.pl -s BMDEVICE_EXEC
+// ------------------------------
+#ifndef BMDEVICE_EXEC_EXPORT_H
+#define BMDEVICE_EXEC_EXPORT_H
+
+#include "ace/config-all.h"
+
+#if defined (ACE_AS_STATIC_LIBS) && !defined (BMDEVICE_EXEC_HAS_DLL)
+# define BMDEVICE_EXEC_HAS_DLL 0
+#endif /* ACE_AS_STATIC_LIBS && BMDEVICE_EXEC_HAS_DLL */
+
+#if !defined (BMDEVICE_EXEC_HAS_DLL)
+# define BMDEVICE_EXEC_HAS_DLL 1
+#endif /* ! BMDEVICE_EXEC_HAS_DLL */
+
+#if defined (BMDEVICE_EXEC_HAS_DLL) && (BMDEVICE_EXEC_HAS_DLL == 1)
+# if defined (BMDEVICE_EXEC_BUILD_DLL)
+# define BMDEVICE_EXEC_Export ACE_Proper_Export_Flag
+# define BMDEVICE_EXEC_SINGLETON_DECLARATION(T) ACE_EXPORT_SINGLETON_DECLARATION (T)
+# define BMDEVICE_EXEC_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# else /* BMDEVICE_EXEC_BUILD_DLL */
+# define BMDEVICE_EXEC_Export ACE_Proper_Import_Flag
+# define BMDEVICE_EXEC_SINGLETON_DECLARATION(T) ACE_IMPORT_SINGLETON_DECLARATION (T)
+# define BMDEVICE_EXEC_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_IMPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# endif /* BMDEVICE_EXEC_BUILD_DLL */
+#else /* BMDEVICE_EXEC_HAS_DLL == 1 */
+# define BMDEVICE_EXEC_Export
+# define BMDEVICE_EXEC_SINGLETON_DECLARATION(T)
+# define BMDEVICE_EXEC_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+#endif /* BMDEVICE_EXEC_HAS_DLL == 1 */
+
+// Set BMDEVICE_EXEC_NTRACE = 0 to turn on library specific tracing even if
+// tracing is turned off for ACE.
+#if !defined (BMDEVICE_EXEC_NTRACE)
+# if (ACE_NTRACE == 1)
+# define BMDEVICE_EXEC_NTRACE 1
+# else /* (ACE_NTRACE == 1) */
+# define BMDEVICE_EXEC_NTRACE 0
+# endif /* (ACE_NTRACE == 1) */
+#endif /* !BMDEVICE_EXEC_NTRACE */
+
+#if (BMDEVICE_EXEC_NTRACE == 1)
+# define BMDEVICE_EXEC_TRACE(X)
+#else /* (BMDEVICE_EXEC_NTRACE == 1) */
+# if !defined (ACE_HAS_TRACE)
+# define ACE_HAS_TRACE
+# endif /* ACE_HAS_TRACE */
+# define BMDEVICE_EXEC_TRACE(X) ACE_TRACE_IMPL(X)
+# include "ace/Trace.h"
+#endif /* (BMDEVICE_EXEC_NTRACE == 1) */
+
+#endif /* BMDEVICE_EXEC_EXPORT_H */
+
+// End of auto generated file.
diff --git a/modules/CIAO/examples/BasicSP/BMDevice/BMDevice_stub_export.h b/modules/CIAO/examples/BasicSP/BMDevice/BMDevice_stub_export.h
new file mode 100644
index 00000000000..d5629993a02
--- /dev/null
+++ b/modules/CIAO/examples/BasicSP/BMDevice/BMDevice_stub_export.h
@@ -0,0 +1,58 @@
+
+// -*- C++ -*-
+// $Id$
+// Definition for Win32 Export directives.
+// This file is generated automatically by generate_export_file.pl -s BMDEVICE_STUB
+// ------------------------------
+#ifndef BMDEVICE_STUB_EXPORT_H
+#define BMDEVICE_STUB_EXPORT_H
+
+#include "ace/config-all.h"
+
+#if defined (ACE_AS_STATIC_LIBS) && !defined (BMDEVICE_STUB_HAS_DLL)
+# define BMDEVICE_STUB_HAS_DLL 0
+#endif /* ACE_AS_STATIC_LIBS && BMDEVICE_STUB_HAS_DLL */
+
+#if !defined (BMDEVICE_STUB_HAS_DLL)
+# define BMDEVICE_STUB_HAS_DLL 1
+#endif /* ! BMDEVICE_STUB_HAS_DLL */
+
+#if defined (BMDEVICE_STUB_HAS_DLL) && (BMDEVICE_STUB_HAS_DLL == 1)
+# if defined (BMDEVICE_STUB_BUILD_DLL)
+# define BMDEVICE_STUB_Export ACE_Proper_Export_Flag
+# define BMDEVICE_STUB_SINGLETON_DECLARATION(T) ACE_EXPORT_SINGLETON_DECLARATION (T)
+# define BMDEVICE_STUB_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# else /* BMDEVICE_STUB_BUILD_DLL */
+# define BMDEVICE_STUB_Export ACE_Proper_Import_Flag
+# define BMDEVICE_STUB_SINGLETON_DECLARATION(T) ACE_IMPORT_SINGLETON_DECLARATION (T)
+# define BMDEVICE_STUB_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_IMPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# endif /* BMDEVICE_STUB_BUILD_DLL */
+#else /* BMDEVICE_STUB_HAS_DLL == 1 */
+# define BMDEVICE_STUB_Export
+# define BMDEVICE_STUB_SINGLETON_DECLARATION(T)
+# define BMDEVICE_STUB_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+#endif /* BMDEVICE_STUB_HAS_DLL == 1 */
+
+// Set BMDEVICE_STUB_NTRACE = 0 to turn on library specific tracing even if
+// tracing is turned off for ACE.
+#if !defined (BMDEVICE_STUB_NTRACE)
+# if (ACE_NTRACE == 1)
+# define BMDEVICE_STUB_NTRACE 1
+# else /* (ACE_NTRACE == 1) */
+# define BMDEVICE_STUB_NTRACE 0
+# endif /* (ACE_NTRACE == 1) */
+#endif /* !BMDEVICE_STUB_NTRACE */
+
+#if (BMDEVICE_STUB_NTRACE == 1)
+# define BMDEVICE_STUB_TRACE(X)
+#else /* (BMDEVICE_STUB_NTRACE == 1) */
+# if !defined (ACE_HAS_TRACE)
+# define ACE_HAS_TRACE
+# endif /* ACE_HAS_TRACE */
+# define BMDEVICE_STUB_TRACE(X) ACE_TRACE_IMPL(X)
+# include "ace/Trace.h"
+#endif /* (BMDEVICE_STUB_NTRACE == 1) */
+
+#endif /* BMDEVICE_STUB_EXPORT_H */
+
+// End of auto generated file.
diff --git a/modules/CIAO/examples/BasicSP/BMDevice/BMDevice_svnt_export.h b/modules/CIAO/examples/BasicSP/BMDevice/BMDevice_svnt_export.h
new file mode 100644
index 00000000000..aef5a60b792
--- /dev/null
+++ b/modules/CIAO/examples/BasicSP/BMDevice/BMDevice_svnt_export.h
@@ -0,0 +1,58 @@
+
+// -*- C++ -*-
+// $Id$
+// Definition for Win32 Export directives.
+// This file is generated automatically by generate_export_file.pl -s BMDEVICE_SVNT
+// ------------------------------
+#ifndef BMDEVICE_SVNT_EXPORT_H
+#define BMDEVICE_SVNT_EXPORT_H
+
+#include "ace/config-all.h"
+
+#if defined (ACE_AS_STATIC_LIBS) && !defined (BMDEVICE_SVNT_HAS_DLL)
+# define BMDEVICE_SVNT_HAS_DLL 0
+#endif /* ACE_AS_STATIC_LIBS && BMDEVICE_SVNT_HAS_DLL */
+
+#if !defined (BMDEVICE_SVNT_HAS_DLL)
+# define BMDEVICE_SVNT_HAS_DLL 1
+#endif /* ! BMDEVICE_SVNT_HAS_DLL */
+
+#if defined (BMDEVICE_SVNT_HAS_DLL) && (BMDEVICE_SVNT_HAS_DLL == 1)
+# if defined (BMDEVICE_SVNT_BUILD_DLL)
+# define BMDEVICE_SVNT_Export ACE_Proper_Export_Flag
+# define BMDEVICE_SVNT_SINGLETON_DECLARATION(T) ACE_EXPORT_SINGLETON_DECLARATION (T)
+# define BMDEVICE_SVNT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# else /* BMDEVICE_SVNT_BUILD_DLL */
+# define BMDEVICE_SVNT_Export ACE_Proper_Import_Flag
+# define BMDEVICE_SVNT_SINGLETON_DECLARATION(T) ACE_IMPORT_SINGLETON_DECLARATION (T)
+# define BMDEVICE_SVNT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_IMPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# endif /* BMDEVICE_SVNT_BUILD_DLL */
+#else /* BMDEVICE_SVNT_HAS_DLL == 1 */
+# define BMDEVICE_SVNT_Export
+# define BMDEVICE_SVNT_SINGLETON_DECLARATION(T)
+# define BMDEVICE_SVNT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+#endif /* BMDEVICE_SVNT_HAS_DLL == 1 */
+
+// Set BMDEVICE_SVNT_NTRACE = 0 to turn on library specific tracing even if
+// tracing is turned off for ACE.
+#if !defined (BMDEVICE_SVNT_NTRACE)
+# if (ACE_NTRACE == 1)
+# define BMDEVICE_SVNT_NTRACE 1
+# else /* (ACE_NTRACE == 1) */
+# define BMDEVICE_SVNT_NTRACE 0
+# endif /* (ACE_NTRACE == 1) */
+#endif /* !BMDEVICE_SVNT_NTRACE */
+
+#if (BMDEVICE_SVNT_NTRACE == 1)
+# define BMDEVICE_SVNT_TRACE(X)
+#else /* (BMDEVICE_SVNT_NTRACE == 1) */
+# if !defined (ACE_HAS_TRACE)
+# define ACE_HAS_TRACE
+# endif /* ACE_HAS_TRACE */
+# define BMDEVICE_SVNT_TRACE(X) ACE_TRACE_IMPL(X)
+# include "ace/Trace.h"
+#endif /* (BMDEVICE_SVNT_NTRACE == 1) */
+
+#endif /* BMDEVICE_SVNT_EXPORT_H */
+
+// End of auto generated file.