|
From: <gb...@us...> - 2009-09-30 02:25:44
|
Revision: 444
http://gearbox.svn.sourceforge.net/gearbox/?rev=444&view=rev
Author: gbiggs
Date: 2009-09-30 02:25:28 +0000 (Wed, 30 Sep 2009)
Log Message:
-----------
Adding OpenRTM components for Gearbox libraries
Added Paths:
-----------
openrtm/
openrtm/branches/
openrtm/tags/
openrtm/trunk/
openrtm/trunk/flexiport/
openrtm/trunk/flexiport/Flexiport.cpp
openrtm/trunk/flexiport/Flexiport.h
openrtm/trunk/flexiport/Flexiport.yaml
openrtm/trunk/flexiport/FlexiportComp.cpp
openrtm/trunk/flexiport/FlexiportComp_vc8.vcproj
openrtm/trunk/flexiport/FlexiportComp_vc9.vcproj
openrtm/trunk/flexiport/Flexiport_vc8.sln
openrtm/trunk/flexiport/Flexiport_vc8.vcproj
openrtm/trunk/flexiport/Flexiport_vc9.sln
openrtm/trunk/flexiport/Flexiport_vc9.vcproj
openrtm/trunk/flexiport/Makefile.Flexiport
openrtm/trunk/flexiport/README.Flexiport
openrtm/trunk/flexiport/copyprops.bat
openrtm/trunk/flexiport/flexiport.hh
openrtm/trunk/flexiport/flexiport.idl
openrtm/trunk/flexiport/flexiportDynSK.cc
openrtm/trunk/flexiport/flexiportSK.cc
openrtm/trunk/flexiport/flexiportSVC_impl.cpp
openrtm/trunk/flexiport/flexiportSVC_impl.h
openrtm/trunk/flexiport/gen.sh
openrtm/trunk/flexiport/user_config.vsprops
openrtm/trunk/gbxgarminacfr/
openrtm/trunk/gbxgarminacfr/.project
openrtm/trunk/gbxgarminacfr/GbxGarminAcfr.cpp
openrtm/trunk/gbxgarminacfr/GbxGarminAcfr.h
openrtm/trunk/gbxgarminacfr/GbxGarminAcfrComp.cpp
openrtm/trunk/gbxgarminacfr/GbxGarminAcfrComp_vc8.vcproj
openrtm/trunk/gbxgarminacfr/GbxGarminAcfrComp_vc9.vcproj
openrtm/trunk/gbxgarminacfr/GbxGarminAcfr_vc8.sln
openrtm/trunk/gbxgarminacfr/GbxGarminAcfr_vc8.vcproj
openrtm/trunk/gbxgarminacfr/GbxGarminAcfr_vc9.sln
openrtm/trunk/gbxgarminacfr/GbxGarminAcfr_vc9.vcproj
openrtm/trunk/gbxgarminacfr/Makefile.GbxGarminAcfr
openrtm/trunk/gbxgarminacfr/README.GbxGarminAcfr
openrtm/trunk/gbxgarminacfr/copyprops.bat
openrtm/trunk/gbxgarminacfr/user_config.vsprops
openrtm/trunk/gbxnovatelacfr/
openrtm/trunk/gbxnovatelacfr/.project
openrtm/trunk/gbxnovatelacfr/GbxNovatelAcfr.cpp
openrtm/trunk/gbxnovatelacfr/GbxNovatelAcfr.h
openrtm/trunk/gbxnovatelacfr/GbxNovatelAcfrComp.cpp
openrtm/trunk/gbxnovatelacfr/GbxNovatelAcfrComp_vc8.vcproj
openrtm/trunk/gbxnovatelacfr/GbxNovatelAcfrComp_vc9.vcproj
openrtm/trunk/gbxnovatelacfr/GbxNovatelAcfr_vc8.sln
openrtm/trunk/gbxnovatelacfr/GbxNovatelAcfr_vc8.vcproj
openrtm/trunk/gbxnovatelacfr/GbxNovatelAcfr_vc9.sln
openrtm/trunk/gbxnovatelacfr/GbxNovatelAcfr_vc9.vcproj
openrtm/trunk/gbxnovatelacfr/Makefile.GbxNovatelAcfr
openrtm/trunk/gbxnovatelacfr/README.GbxNovatelAcfr
openrtm/trunk/gbxnovatelacfr/copyprops.bat
openrtm/trunk/gbxnovatelacfr/user_config.vsprops
openrtm/trunk/gbxsickacfr/
openrtm/trunk/gbxsickacfr/.project
openrtm/trunk/gbxsickacfr/Makefile.gbxsickacfr
openrtm/trunk/gbxsickacfr/README.gbxsickacfr
openrtm/trunk/gbxsickacfr/copyprops.bat
openrtm/trunk/gbxsickacfr/gbxsickacfr.cpp
openrtm/trunk/gbxsickacfr/gbxsickacfr.h
openrtm/trunk/gbxsickacfr/gbxsickacfrComp.cpp
openrtm/trunk/gbxsickacfr/gbxsickacfrComp_vc8.vcproj
openrtm/trunk/gbxsickacfr/gbxsickacfrComp_vc9.vcproj
openrtm/trunk/gbxsickacfr/gbxsickacfr_vc8.sln
openrtm/trunk/gbxsickacfr/gbxsickacfr_vc8.vcproj
openrtm/trunk/gbxsickacfr/gbxsickacfr_vc9.sln
openrtm/trunk/gbxsickacfr/gbxsickacfr_vc9.vcproj
openrtm/trunk/gbxsickacfr/user_config.vsprops
openrtm/trunk/gbxsmartbatteryacfr/
openrtm/trunk/gbxsmartbatteryacfr/.project
openrtm/trunk/gbxsmartbatteryacfr/GbxSmartBatteryAcfr.cpp
openrtm/trunk/gbxsmartbatteryacfr/GbxSmartBatteryAcfr.h
openrtm/trunk/gbxsmartbatteryacfr/GbxSmartBatteryAcfrComp.cpp
openrtm/trunk/gbxsmartbatteryacfr/GbxSmartBatteryAcfrComp_vc8.vcproj
openrtm/trunk/gbxsmartbatteryacfr/GbxSmartBatteryAcfrComp_vc9.vcproj
openrtm/trunk/gbxsmartbatteryacfr/GbxSmartBatteryAcfr_vc8.sln
openrtm/trunk/gbxsmartbatteryacfr/GbxSmartBatteryAcfr_vc8.vcproj
openrtm/trunk/gbxsmartbatteryacfr/GbxSmartBatteryAcfr_vc9.sln
openrtm/trunk/gbxsmartbatteryacfr/GbxSmartBatteryAcfr_vc9.vcproj
openrtm/trunk/gbxsmartbatteryacfr/Makefile.GbxSmartBatteryAcfr
openrtm/trunk/gbxsmartbatteryacfr/README.GbxSmartBatteryAcfr
openrtm/trunk/gbxsmartbatteryacfr/copyprops.bat
openrtm/trunk/gbxsmartbatteryacfr/gbxsmartbatteryacfr.hh
openrtm/trunk/gbxsmartbatteryacfr/gbxsmartbatteryacfr.idl
openrtm/trunk/gbxsmartbatteryacfr/gbxsmartbatteryacfrDynSK.cc
openrtm/trunk/gbxsmartbatteryacfr/gbxsmartbatteryacfrSK.cc
openrtm/trunk/gbxsmartbatteryacfr/gbxsmartbatteryacfrSVC_impl.cpp
openrtm/trunk/gbxsmartbatteryacfr/gbxsmartbatteryacfrSVC_impl.h
openrtm/trunk/gbxsmartbatteryacfr/user_config.vsprops
openrtm/trunk/hokuyo_aist/
openrtm/trunk/hokuyo_aist/.project
openrtm/trunk/hokuyo_aist/Makefile.hokuyo_aist
openrtm/trunk/hokuyo_aist/README.hokuyo_aist
openrtm/trunk/hokuyo_aist/copyprops.bat
openrtm/trunk/hokuyo_aist/hokuyo_aist.cpp
openrtm/trunk/hokuyo_aist/hokuyo_aist.h
openrtm/trunk/hokuyo_aist/hokuyo_aist.hh
openrtm/trunk/hokuyo_aist/hokuyo_aist.idl
openrtm/trunk/hokuyo_aist/hokuyo_aistComp.cpp
openrtm/trunk/hokuyo_aist/hokuyo_aistComp_vc8.vcproj
openrtm/trunk/hokuyo_aist/hokuyo_aistComp_vc9.vcproj
openrtm/trunk/hokuyo_aist/hokuyo_aistDynSK.cc
openrtm/trunk/hokuyo_aist/hokuyo_aistSK.cc
openrtm/trunk/hokuyo_aist/hokuyo_aistSVC_impl.cpp
openrtm/trunk/hokuyo_aist/hokuyo_aistSVC_impl.h
openrtm/trunk/hokuyo_aist/hokuyo_aist_vc8.sln
openrtm/trunk/hokuyo_aist/hokuyo_aist_vc8.vcproj
openrtm/trunk/hokuyo_aist/hokuyo_aist_vc9.sln
openrtm/trunk/hokuyo_aist/hokuyo_aist_vc9.vcproj
openrtm/trunk/hokuyo_aist/user_config.vsprops
Added: openrtm/trunk/flexiport/Flexiport.cpp
===================================================================
--- openrtm/trunk/flexiport/Flexiport.cpp (rev 0)
+++ openrtm/trunk/flexiport/Flexiport.cpp 2009-09-30 02:25:28 UTC (rev 444)
@@ -0,0 +1,300 @@
+// -*- C++ -*-
+/*!
+ * @file Flexiport.cpp * @brief Flexiport hardware data communications component * $Date$
+ *
+ * $Id$
+ */
+#include "Flexiport.h"
+
+#include <flexiport/flexiport.h>
+
+// Module specification
+// <rtc-template block="module_spec">
+static const char* flexiport_spec[] =
+ {
+ "implementation_id", "Flexiport",
+ "type_name", "Flexiport",
+ "description", "Flexiport hardware data communications component",
+ "version", "0.0.1",
+ "vendor", "Geoffrey Biggs, AIST",
+ "category", "DataProvider",
+ "activity_type", "SPORADIC",
+ "kind", "DataFlowComponent",
+ "max_instance", "10",
+ "language", "C++",
+ "lang_type", "compile",
+ // Configuration variables
+ "conf.default.portOpts", "type=serial,device=/dev/ttyACM0,timeout=1",
+ "conf.default.debug", "0",
+ "conf.default.timeout_sec", "1",
+ "conf.default.timeout_usec", "0",
+ "conf.default.readable", "1",
+ "conf.default.writable", "1",
+ "conf.default.sleepTime", "10",
+ "conf.default.bufferSize", "0",
+ ""
+ };
+// </rtc-template>
+
+Flexiport::Flexiport(RTC::Manager* manager)
+ // <rtc-template block="initializer">
+ : RTC::DataFlowComponentBase(manager),
+ m_sendDataIn("sendData", m_sendData),
+ m_recvDataOut("recvData", m_recvData),
+ m_apiPortPort("apiPort"),
+
+ // </rtc-template>
+ _port (NULL), _buffer (NULL)
+{
+ // Registration: InPort/OutPort/Service
+ // <rtc-template block="registration">
+ // Set InPort buffers
+ registerInPort("sendData", m_sendDataIn);
+
+ // Set OutPort buffer
+ registerOutPort("recvData", m_recvDataOut);
+
+ // Set service provider to Ports
+ m_apiPortPort.registerProvider("flexiport", "flexiport", m_flexiport);
+
+ // Set service consumers to Ports
+
+ // Set CORBA Service Ports
+ registerPort(m_apiPortPort);
+
+ // </rtc-template>
+
+}
+
+Flexiport::~Flexiport()
+{
+ if (_buffer != NULL)
+ {
+ free (_buffer);
+ _buffer = NULL;
+ }
+ if (_port != NULL)
+ {
+ delete _port;
+ _port = NULL;
+ }
+}
+
+
+RTC::ReturnCode_t Flexiport::onInitialize()
+{
+ // <rtc-template block="bind_config">
+ // Bind variables and configuration variable
+ bindParameter("portOpts", m_portOpts, "type=serial,device=/dev/ttyACM0,timeout=1");
+ bindParameter("debug", m_debug, "0");
+ bindParameter("timeout_sec", m_timeout_sec, "1");
+ bindParameter("timeout_usec", m_timeout_usec, "0");
+ bindParameter("readable", m_readable, "1");
+ bindParameter("writable", m_writable, "1");
+ bindParameter("sleepTime", m_sleepTime, "0");
+ bindParameter("bufferSize", m_bufferSize, "0");
+
+ // </rtc-template>
+ return RTC::RTC_OK;
+}
+
+
+/*
+RTC::ReturnCode_t Flexiport::onFinalize()
+{
+ return RTC::RTC_OK;
+}
+*/
+/*
+RTC::ReturnCode_t Flexiport::onStartup(RTC::UniqueId ec_id)
+{
+ return RTC::RTC_OK;
+}
+*/
+/*
+RTC::ReturnCode_t Flexiport::onShutdown(RTC::UniqueId ec_id)
+{
+ return RTC::RTC_OK;
+}
+*/
+
+RTC::ReturnCode_t Flexiport::onActivated(RTC::UniqueId ec_id)
+{
+ try
+ {
+ _port = flexiport::CreatePort (m_portOpts);
+ if (!_port->IsOpen ())
+ _port->Open ();
+ }
+ catch (flexiport::PortException e)
+ {
+ std::cout << "Failed to create and open port: " << e.what () << std::endl;
+ return RTC::RTC_ERROR;
+ }
+ m_flexiport.SetPort (_port);
+
+ if (m_bufferSize > 0)
+ {
+ if ((_buffer = reinterpret_cast<uint8_t*> (malloc (sizeof (uint8_t) * m_bufferSize))) == NULL)
+ {
+ std::cout << "Failed to allocate memory for buffer." << std::endl;
+ return RTC::RTC_ERROR;
+ }
+ }
+ else
+ {
+ if ((_buffer = reinterpret_cast<uint8_t*> (malloc (1))) == NULL)
+ {
+ std::cout << "Failed to allocate memory for buffer." << std::endl;
+ return RTC::RTC_ERROR;
+ }
+ }
+
+ return RTC::RTC_OK;
+}
+
+
+RTC::ReturnCode_t Flexiport::onDeactivated(RTC::UniqueId ec_id)
+{
+ if (_buffer != NULL)
+ {
+ free (_buffer);
+ _buffer = NULL;
+ }
+ if (_port != NULL)
+ {
+ delete _port;
+ _port = NULL;
+ }
+
+ return RTC::RTC_OK;
+}
+
+
+RTC::ReturnCode_t Flexiport::onExecute(RTC::UniqueId ec_id)
+{
+ int bytesWaiting = 0, bytesToRead = 0, bytesRead = 0, bytesWritten = 0;
+
+ // Check the left port for waiting data
+ std::cout << "Checking port for data." << std::endl;
+ bytesWaiting = _port->BytesAvailableWait ();
+ if (bytesWaiting > 0)
+ {
+ std::cout << "There are " << bytesWaiting << " bytes waiting at the port." << std::endl;
+ if (m_bufferSize == 0)
+ {
+ // Allocate space
+ if ((_buffer = reinterpret_cast<uint8_t*> (realloc (_buffer,
+ sizeof (uint8_t) * bytesWaiting + 1))) == NULL)
+ {
+ std::cout << "Failed to reallocate memory for buffer." << std::endl;
+ return RTC::RTC_ERROR;
+ }
+ bytesToRead = bytesWaiting;
+ }
+ else
+ bytesToRead = m_bufferSize; // Read up to as much as we can fit
+ // Read data from the left
+ bytesRead = _port->Read (_buffer, bytesToRead);
+ _buffer[bytesRead] = '\0';
+ std::cout << "Read " << bytesRead << " bytes from the port: |" << _buffer <<
+ "|." << std::endl;
+ if (bytesRead <= 0)
+ {
+ std::cout << "Expected " << bytesToRead <<
+ " bytes from the port, didn't get any." << std::endl;
+ }
+ else
+ {
+ // Pump the data out the data out port
+ m_recvData.data.length (bytesRead);
+ for (int ii = 0; ii < bytesRead; ii++)
+ m_recvData.data[ii] = _buffer[ii];
+ m_recvDataOut.write ();
+ }
+ }
+
+ // Do the same thing for the data in port
+ std::cout << "Checking data in port for data." << std::endl;
+ if (m_sendDataIn.isNew())
+ {
+ m_sendDataIn.read();
+ bytesWaiting = m_sendData.data.length ();
+ std::cout << "There are " << bytesWaiting << " bytes waiting at the data in port." << std::endl;
+ if (m_bufferSize == 0)
+ {
+ // Allocate space
+ if ((_buffer = reinterpret_cast<uint8_t*> (realloc (_buffer,
+ sizeof (uint8_t) * bytesWaiting + 1))) == NULL)
+ {
+ std::cout << "Failed to reallocate memory for buffer." << std::endl;
+ return RTC::RTC_ERROR;
+ }
+ // bytesWaiting = bytesWaiting
+ }
+ else
+ bytesWaiting = m_bufferSize; // Read up to as much as we can fit
+ // Write the data to the left port
+ for (int ii = 0; ii < bytesWaiting; ii++)
+ _buffer[ii]= m_sendData.data[ii];
+ bytesWritten = _port->WriteFull (_buffer, bytesWaiting);
+ std::cout << "Wrote " << bytesWritten << " bytes to the port." << std::endl;
+ }
+
+ // Sleep if set to do so
+ if (m_sleepTime > 0)
+ {
+ std::cout << "Sleeping for " << m_sleepTime << " microseconds." << std::endl;
+ usleep (m_sleepTime);
+ }
+
+ return RTC::RTC_OK;
+}
+
+/*
+RTC::ReturnCode_t Flexiport::onAborting(RTC::UniqueId ec_id)
+{
+ return RTC::RTC_OK;
+}
+*/
+/*
+RTC::ReturnCode_t Flexiport::onError(RTC::UniqueId ec_id)
+{
+ return RTC::RTC_OK;
+}
+*/
+/*
+RTC::ReturnCode_t Flexiport::onReset(RTC::UniqueId ec_id)
+{
+ return RTC::RTC_OK;
+}
+*/
+/*
+RTC::ReturnCode_t Flexiport::onStateUpdate(RTC::UniqueId ec_id)
+{
+ return RTC::RTC_OK;
+}
+*/
+/*
+RTC::ReturnCode_t Flexiport::onRateChanged(RTC::UniqueId ec_id)
+{
+ return RTC::RTC_OK;
+}
+*/
+
+
+extern "C"
+{
+
+ void FlexiportInit(RTC::Manager* manager)
+ {
+ RTC::Properties profile(flexiport_spec);
+ manager->registerFactory(profile,
+ RTC::Create<Flexiport>,
+ RTC::Delete<Flexiport>);
+ }
+
+};
+
+
+
Added: openrtm/trunk/flexiport/Flexiport.h
===================================================================
--- openrtm/trunk/flexiport/Flexiport.h (rev 0)
+++ openrtm/trunk/flexiport/Flexiport.h 2009-09-30 02:25:28 UTC (rev 444)
@@ -0,0 +1,206 @@
+// -*- C++ -*-
+/*!
+ * @file Flexiport.h * @brief Flexiport hardware data communications component * @date $Date$
+ *
+ * $Id$
+ */
+#ifndef FLEXIPORT_H
+#define FLEXIPORT_H
+
+#include <rtm/idl/BasicDataTypeSkel.h>
+#include <rtm/Manager.h>
+#include <rtm/DataFlowComponentBase.h>
+#include <rtm/CorbaPort.h>
+#include <rtm/DataInPort.h>
+#include <rtm/DataOutPort.h>
+#include <flexiport/port.h>
+
+// Service implementation headers
+// <rtc-template block="service_impl_h">
+#include "flexiportSVC_impl.h"
+
+// </rtc-template>
+
+// Service Consumer stub headers
+// <rtc-template block="consumer_stub_h">
+
+// </rtc-template>
+
+using namespace RTC;
+
+class Flexiport : public RTC::DataFlowComponentBase
+{
+ public:
+ Flexiport(RTC::Manager* manager);
+ ~Flexiport();
+
+ // The initialize action (on CREATED->ALIVE transition)
+ // formaer rtc_init_entry()
+ virtual RTC::ReturnCode_t onInitialize();
+
+ // The finalize action (on ALIVE->END transition)
+ // formaer rtc_exiting_entry()
+ // virtual RTC::ReturnCode_t onFinalize();
+
+ // The startup action when ExecutionContext startup
+ // former rtc_starting_entry()
+ // virtual RTC::ReturnCode_t onStartup(RTC::UniqueId ec_id);
+
+ // The shutdown action when ExecutionContext stop
+ // former rtc_stopping_entry()
+ // virtual RTC::ReturnCode_t onShutdown(RTC::UniqueId ec_id);
+
+ // The activated action (Active state entry action)
+ // former rtc_active_entry()
+ virtual RTC::ReturnCode_t onActivated(RTC::UniqueId ec_id);
+
+ // The deactivated action (Active state exit action)
+ // former rtc_active_exit()
+ virtual RTC::ReturnCode_t onDeactivated(RTC::UniqueId ec_id);
+
+ // The execution action that is invoked periodically
+ // former rtc_active_do()
+ virtual RTC::ReturnCode_t onExecute(RTC::UniqueId ec_id);
+
+ // The aborting action when main logic error occurred.
+ // former rtc_aborting_entry()
+ // virtual RTC::ReturnCode_t onAborting(RTC::UniqueId ec_id);
+
+ // The error action in ERROR state
+ // former rtc_error_do()
+ // virtual RTC::ReturnCode_t onError(RTC::UniqueId ec_id);
+
+ // The reset action that is invoked resetting
+ // This is same but different the former rtc_init_entry()
+ // virtual RTC::ReturnCode_t onReset(RTC::UniqueId ec_id);
+
+ // The state update action that is invoked after onExecute() action
+ // no corresponding operation exists in OpenRTm-aist-0.2.0
+ // virtual RTC::ReturnCode_t onStateUpdate(RTC::UniqueId ec_id);
+
+ // The action that is invoked when execution context's rate is changed
+ // no corresponding operation exists in OpenRTm-aist-0.2.0
+ // virtual RTC::ReturnCode_t onRateChanged(RTC::UniqueId ec_id);
+
+
+ protected:
+ // Configuration variable declaration
+ // <rtc-template block="config_declare">
+ /*!
+ * Options for the serial port connected to the laser. See GearBox library flexiport
+ * documentation for details.
+ * - Name: portOptions
+ * - DefaultValue: type=serial,device=/dev/ttyACM0,timeout=1
+ */
+ std::string m_portOpts;
+ /*!
+ * Debug level.
+ * - Name: debug debug
+ * - DefaultValue: 0
+ */
+ int m_debug;
+ /*!
+ * Timeout for the port, seconds value.
+ * - Name: timeout_sec timeout_sec
+ * - DefaultValue: 1
+ * - Unit: seconds
+ */
+ int m_timeout_sec;
+ /*!
+ * Timeout for the port, microseconds value.
+ * - Name: timeout_usec timeout_usec
+ * - DefaultValue: 0
+ * - Unit: microseconds
+ */
+ int m_timeout_usec;
+ /*!
+ * Port read permissions.
+ * - Name: readable readable
+ * - DefaultValue: 1
+ */
+ bool m_readable;
+ /*!
+ * Port write permissions.
+ * - Name: writable writable
+ * - DefaultValue: 1
+ */
+ bool m_writable;
+ /*!
+ * Time to sleep between peeks for data waiting to be read or written.
+ * - Name: sleepTime sleepTime
+ * - DefaultValue: 10
+ * - Unit: microseconds
+ */
+ int m_sleepTime;
+ /*!
+ * Amount of data to move at a time. Set to zero to move as much as possible.
+ * - Name: bufferSize bufferSize
+ * - DefaultValue: 0
+ * - Unit: bytes
+ */
+ int m_bufferSize;
+
+ // </rtc-template>
+
+ // DataInPort declaration
+ // <rtc-template block="inport_declare">
+ TimedOctetSeq m_sendData;
+ /*!
+ * Data to write to the port.
+ * - Type: TimedOctetSeq
+ * - Number: Variable.
+ * - Semantics: Raw bytes.
+ * - Frequency: Irregularly.
+ */
+ InPort<TimedOctetSeq> m_sendDataIn;
+
+ // </rtc-template>
+
+ // DataOutPort declaration
+ // <rtc-template block="outport_declare">
+ TimedOctetSeq m_recvData;
+ /*!
+ * Data read from the port.
+ * - Type: TimedOctetSeq
+ * - Number: Variable.
+ * - Semantics: Raw bytes.
+ * - Frequency: Irregularly.
+ */
+ OutPort<TimedOctetSeq> m_recvDataOut;
+
+ // </rtc-template>
+
+ // CORBA Port declaration
+ // <rtc-template block="corbaport_declare">
+ /*!
+ * Control interface; provides programmatical access to the port's settings.
+ */
+ RTC::CorbaPort m_apiPortPort;
+
+ // </rtc-template>
+
+ // Service declaration
+ // <rtc-template block="service_declare">
+ flexiport_intfSVC_impl m_flexiport;
+
+ // </rtc-template>
+
+ // Consumer declaration
+ // <rtc-template block="consumer_declare">
+
+ // </rtc-template>
+ flexiport::Port *_port;
+ uint8_t *_buffer;
+
+ private:
+
+};
+
+
+extern "C"
+{
+ void FlexiportInit(RTC::Manager* manager);
+};
+
+#endif // FLEXIPORT_H
+
Added: openrtm/trunk/flexiport/Flexiport.yaml
===================================================================
--- openrtm/trunk/flexiport/Flexiport.yaml (rev 0)
+++ openrtm/trunk/flexiport/Flexiport.yaml 2009-09-30 02:25:28 UTC (rev 444)
@@ -0,0 +1,272 @@
+rtcProfile:
+ version: "1.0"
+ id: RTC:Geoffrey Biggs, AIST.DataProvider.Flexiport:0.0.1
+ basicInfo:
+ name: Flexiport
+ description: Flexiport hardware data communications component
+ version: 0.0.1
+ vendor: Geoffrey Biggs, AIST
+ category: DataProvider
+ componentType: STATIC
+ activityType: SPORADIC
+ componentKind: DataFlowComponent
+ maxInstances: 10
+ abstract:
+ executionRate: 1000.0
+ executionType: PeriodicExecutionContext
+ creationDate:
+ year: 2008
+ month: 7
+ day: 9
+ hour: 16
+ minute: 49
+ second: 9
+ updateDate:
+ year:
+ month:
+ day:
+ hour:
+ minute:
+ second:
+ "rtcDoc::doc":
+ algorithm:
+ creator:
+ description:
+ inout:
+ license:
+ reference:
+ "rtcExt::versionUpLog":
+ language:
+ actions:
+ onInitialize:
+ implemented: True
+ "rtcDoc::doc":
+ description: onInitialize description
+ postCondition: onInitialize Post_condition
+ preCondition: onInitialize Pre_condition
+ onActivated:
+ implemented: True
+ "rtcDoc::doc":
+ description: onActivated description
+ postCondition: onActivated Post_condition
+ preCondition: onActivated Pre_condition
+ onDeactivated:
+ implemented: True
+ "rtcDoc::doc":
+ description: onDeactivated description
+ postCondition: onDeactivated Post_condition
+ preCondition: onDeactivated Pre_condition
+ onAborting:
+ implemented: True
+ "rtcDoc::doc":
+ description: onAborting description
+ postCondition: onAborting Post_condition
+ preCondition: onAborting Pre_condition
+ onError:
+ implemented: True
+ "rtcDoc::doc":
+ description: onError description
+ postCondition: onError Post_condition
+ preCondition: onError Pre_condition
+ onReset:
+ implemented: True
+ "rtcDoc::doc":
+ description: onReset description
+ postCondition: onReset Post_condition
+ preCondition: onReset Pre_condition
+ onFinalize:
+ implemented: True
+ "rtcDoc::doc":
+ description: onFinalize description
+ postCondition: onFinalize Post_condition
+ preCondition: onFinalize Pre_condition
+ onStartup:
+ implemented: True
+ "rtcDoc::doc":
+ description: onStartup description
+ postCondition: onStartup Post_condition
+ preCondition: onStartup Pre_condition
+ onRateChanged:
+ implemented: True
+ "rtcDoc::doc":
+ description: onRateChanged description
+ postCondition: onRateChanged Post_condition
+ preCondition: onRateChanged Pre_condition
+ onShutdown:
+ implemented: True
+ "rtcDoc::doc":
+ description: onShutdown description
+ postCondition: onShutdown Post_condition
+ preCondition: onShutdown Pre_condition
+ onExecute:
+ implemented: True
+ "rtcDoc::doc":
+ description: onExecute description
+ postCondition: onExecute Post_condition
+ preCondition: onExecute Pre_condition
+ onStateUpdate:
+ implemented: True
+ "rtcDoc::doc":
+ description: onStateUpdate description
+ postCondition: onStateUpdate Post_condition
+ preCondition: onStateUpdate Pre_condition
+ dataPorts:
+ -
+ portType: DataOutPort
+ name: recvData
+ type: TimedOctetSeq
+ interfaceType: CorbaPort
+ dataflowType: Push,Pull
+ subscriptionType: Periodic,New,Flush
+ idlFile:
+ "rtcDoc::doc":
+ type: TimedOctetSeq
+ description:
+ number: 0
+ occerrence:
+ operation:
+ semantics:
+ unit:
+ "rtcExt::position": RIGHT
+ "rtcExt::varname": recvData
+ -
+ portType: DataInPort
+ name: sendData
+ type: TimedOctetSeq
+ interfaceType: CorbaPort
+ dataflowType: Push,Pull
+ subscriptionType: Periodic,New,Flush
+ idlFile:
+ "rtcDoc::doc":
+ type: TimedOctetSeq
+ description:
+ number: 1
+ occerrence:
+ operation:
+ semantics:
+ unit:
+ "rtcExt::position": LEFT
+ "rtcExt::varname": sendData
+ servicePorts:
+ -
+ name: apiPort
+ "rtcDoc::doc":
+ description:
+ ifdescription:
+ "rtcExt::position": RIGHT
+ serviceInterface:
+ -
+ direction: Provided
+ name: flexiport
+ type: flexiport_intf
+ varname: flexiport
+ instanceName: flexiport
+ idlFile: flexiport.idl
+ path:
+ "rtcDoc::doc":
+ description:
+ docArgument:
+ docException:
+ docPostCondition:
+ docPreCondition:
+ docReturn:
+ configurationSet:
+ configuration:
+ -
+ name: portOpts
+ type: std::string
+ varname: portOpts
+ defaultValue: type=serial,device=/dev/ttyACM0,timeout=1
+ "rtcDoc::doc":
+ constraint: constraint
+ dataname: dataname
+ defaultValue: type=serial,device=/dev/ttyACM0,timeout=1
+ description: description
+ range: range
+ unit: unit
+ -
+ name: debug
+ type: int
+ varname: debug
+ defaultValue: 0
+ "rtcDoc::doc":
+ constraint: constraint
+ dataname: dataname
+ defaultValue: 0
+ description: description
+ range: range
+ unit: unit
+ -
+ name: timeout_sec
+ type: int
+ varname: timeout_sec
+ defaultValue: 1
+ "rtcDoc::doc":
+ constraint: constraint
+ dataname: dataname
+ defaultValue: 1
+ description: description
+ range: range
+ unit: unit
+ -
+ name: timeout_usec
+ type: int
+ varname: timeout_usec
+ defaultValue: 0
+ "rtcDoc::doc":
+ constraint: constraint
+ dataname: dataname
+ defaultValue: 0
+ description: description
+ range: range
+ unit: unit
+ -
+ name: readable
+ type: bool
+ varname: readable
+ defaultValue: 1
+ "rtcDoc::doc":
+ constraint: constraint
+ dataname: dataname
+ defaultValue: 1
+ description: description
+ range: range
+ unit: unit
+ -
+ name: writable
+ type: bool
+ varname: writable
+ defaultValue: 1
+ "rtcDoc::doc":
+ constraint: constraint
+ dataname: dataname
+ defaultValue: 1
+ description: description
+ range: range
+ unit: unit
+ -
+ name: sleepTime
+ type: int
+ varname: sleepTime
+ defaultValue: 10
+ "rtcDoc::doc":
+ constraint: constraint
+ dataname: dataname
+ defaultValue: 10
+ description: description
+ range: range
+ unit: unit
+ -
+ name: bufferSize
+ type: int
+ varname: bufferSize
+ defaultValue: 0
+ "rtcDoc::doc":
+ constraint: constraint
+ dataname: dataname
+ defaultValue: 0
+ description: description
+ range: range
+ unit: unit
+ parameters:
+
Added: openrtm/trunk/flexiport/FlexiportComp.cpp
===================================================================
--- openrtm/trunk/flexiport/FlexiportComp.cpp (rev 0)
+++ openrtm/trunk/flexiport/FlexiportComp.cpp 2009-09-30 02:25:28 UTC (rev 444)
@@ -0,0 +1,91 @@
+// -*- C++ -*-
+/*!
+ * @file FlexiportComp.cpp
+ * @brief Standalone component
+ * @date $Date$
+ *
+ * $Id$
+ */
+#include <rtm/Manager.h>
+#include <iostream>
+#include <string>
+#include "Flexiport.h"
+
+
+void MyModuleInit(RTC::Manager* manager)
+{
+ FlexiportInit(manager);
+ RTC::RtcBase* comp;
+
+ // Create a component
+ comp = manager->createComponent("Flexiport");
+
+
+ // Example
+ // The following procedure is examples how handle RT-Components.
+ // These should not be in this function.
+
+ // Get the component's object reference
+// RTC::RTObject_var rtobj;
+// rtobj = RTC::RTObject::_narrow(manager->getPOA()->servant_to_reference(comp));
+
+ // Get the port list of the component
+// PortList* portlist;
+// portlist = rtobj->get_ports();
+
+ // getting port profiles
+// std::cout << "Number of Ports: ";
+// std::cout << portlist->length() << std::endl << std::endl;
+// for (CORBA::ULong i(0), n(portlist->length()); i < n; ++i)
+// {
+// Port_ptr port;
+// port = (*portlist)[i];
+// std::cout << "Port" << i << " (name): ";
+// std::cout << port->get_port_profile()->name << std::endl;
+//
+// RTC::PortInterfaceProfileList iflist;
+// iflist = port->get_port_profile()->interfaces;
+// std::cout << "---interfaces---" << std::endl;
+// for (CORBA::ULong i(0), n(iflist.length()); i < n; ++i)
+// {
+// std::cout << "I/F name: ";
+// std::cout << iflist[i].instance_name << std::endl;
+// std::cout << "I/F type: ";
+// std::cout << iflist[i].type_name << std::endl;
+// const char* pol;
+// pol = iflist[i].polarity == 0 ? "PROVIDED" : "REQUIRED";
+// std::cout << "Polarity: " << pol << std::endl;
+// }
+// std::cout << "---properties---" << std::endl;
+// NVUtil::dump(port->get_port_profile()->properties);
+// std::cout << "----------------" << std::endl << std::endl;
+// }
+
+ return;
+}
+
+int main (int argc, char** argv)
+{
+ RTC::Manager* manager;
+ manager = RTC::Manager::init(argc, argv);
+
+ // Initialize manager
+ manager->init(argc, argv);
+
+ // Set module initialization proceduer
+ // This procedure will be invoked in activateManager() function.
+ manager->setModuleInitProc(MyModuleInit);
+
+ // Activate manager and register to naming service
+ manager->activateManager();
+
+ // run the manager in blocking mode
+ // runManager(false) is the default.
+ manager->runManager();
+
+ // If you want to run the manager in non-blocking mode, do like this
+ // manager->runManager(true);
+
+ return 0;
+}
+
Added: openrtm/trunk/flexiport/FlexiportComp_vc8.vcproj
===================================================================
--- openrtm/trunk/flexiport/FlexiportComp_vc8.vcproj (rev 0)
+++ openrtm/trunk/flexiport/FlexiportComp_vc8.vcproj 2009-09-30 02:25:28 UTC (rev 444)
@@ -0,0 +1,226 @@
+<?xml version="1.0" encoding="shift_jis"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="8.00"
+ Name="FlexiportComp"
+ ProjectGUID="{83A92EE1-4D8B-11DD-AA7E-001D090CD254}"
+ RootNamespace="FlexiportComp"
+ Keyword="Win32Proj"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="$(ProjectDir)FlexiportComp\$(ConfigurationName)"
+ IntermediateDirectory="FlexiportComp\$(ConfigurationName)"
+ ConfigurationType="1"
+ CharacterSet="0"
+ InheritedPropertySheets="$(SolutionDir)rtm_config.vsprops;$(SolutionDir)user_config.vsprops"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ CommandLine="set PATH=$(rtm_path);%PYTHON_ROOT%\\;%PATH%
for %%x in (*.idl) do rtm-skelwrapper.py --include-dir="" --skel-suffix=Skel --stub-suffix=Stub --idl-file=%%x
for %%x in (*.idl) do $(rtm_idlc) $(rtm_idlflags) %%x
"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ PreprocessorDefinitions="USE_stub_in_nt_dll;WIN32;_DEBUG;_CONSOLE;__WIN32__;__x86__;_WIN32_WINNT=0x0400;__NT__;__OSVERSION__=4;_CRT_SECURE_NO_DEPRECATE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ UsePrecompiledHeader="0"
+ WarningLevel="3"
+ Detect64BitPortabilityProblems="true"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="$(rtm_libd)"
+ OutputFile="$(OutDir)\FlexiportComp.exe"
+ LinkIncremental="2"
+ GenerateDebugInformation="true"
+ SubSystem="1"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCWebDeploymentTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="$(ProjectDir)FlexiportComp\$(ConfigurationName)"
+ IntermediateDirectory="FlexiportComp\$(ConfigurationName)"
+ ConfigurationType="1"
+ CharacterSet="0"
+ InheritedPropertySheets="$(SolutionDir)rtm_config.vsprops;$(SolutionDir)user_config.vsprops"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ CommandLine="set PATH=$(rtm_path);%PYTHON_ROOT%\\;%PATH%
for %%x in (*.idl) do rtm-skelwrapper.py --include-dir="" --skel-suffix=Skel --stub-suffix=Stub --idl-file=%%x
for %%x in (*.idl) do $(rtm_idlc) $(rtm_idlflags) %%x
"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ PreprocessorDefinitions="USE_stub_in_nt_dll;WIN32;NDEBUG;_CONSOLE;__WIN32__;__x86__;_WIN32_WINNT=0x0400;__NT__;__OSVERSION__=4;_CRT_SECURE_NO_DEPRECATE"
+ RuntimeLibrary="2"
+ UsePrecompiledHeader="0"
+ WarningLevel="3"
+ Detect64BitPortabilityProblems="true"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="$(rtm_lib)"
+ OutputFile="$(OutDir)\FlexiportComp.exe"
+ LinkIncremental="1"
+ GenerateDebugInformation="false"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ LinkTimeCodeGeneration="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCWebDeploymentTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ CommandLine="if NOT EXIST "$(SolutionDir)\\components" mkdir "$(SolutionDir)\\components"
copy "$(OutDir)\\FlexiportComp.exe" "$(SolutionDir)\\components"
"
+ />
+
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ UniqueIdentifier="{83A9E651-4D8B-11DD-83F7-001D090CD254}"
+ >
+ <File
+ RelativePath="Flexiport.cpp"
+ >
+ </File>
+ <File
+ RelativePath="FlexiportComp.cpp"
+ >
+ </File>
+ <File
+ RelativePath="flexiportSkel.cpp"
+ >
+ </File>
+ <File
+ RelativePath="flexiportSVC_impl.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Header Files"
+ Filter="h;hpp;hxx;hm;inl;inc;xsd"
+ UniqueIdentifier="{83A9E83A-4D8B-11DD-8E77-001D090CD254}"
+ >
+ <File
+ RelativePath="Flexiport.h"
+ >
+ </File>
+ <File
+ RelativePath="flexiportSkel.h"
+ >
+ </File>
+ <File
+ RelativePath="flexiportSVC_impl.h"
+ >
+ </File>
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>
Added: openrtm/trunk/flexiport/FlexiportComp_vc9.vcproj
===================================================================
--- openrtm/trunk/flexiport/FlexiportComp_vc9.vcproj (rev 0)
+++ openrtm/trunk/flexiport/FlexiportComp_vc9.vcproj 2009-09-30 02:25:28 UTC (rev 444)
@@ -0,0 +1,226 @@
+<?xml version="1.0" encoding="shift_jis"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="9.00"
+ Name="FlexiportComp"
+ ProjectGUID="{83C689E1-4D8B-11DD-8F7C-001D090CD254}"
+ RootNamespace="FlexiportComp"
+ Keyword="Win32Proj"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="$(ProjectDir)FlexiportComp\$(ConfigurationName)"
+ IntermediateDirectory="FlexiportComp\$(ConfigurationName)"
+ ConfigurationType="1"
+ CharacterSet="0"
+ InheritedPropertySheets="$(SolutionDir)rtm_config.vsprops;$(SolutionDir)user_config.vsprops"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ CommandLine="set PATH=$(rtm_path);%PYTHON_ROOT%\\;%PATH%
for %%x in (*.idl) do rtm-skelwrapper.py --include-dir="" --skel-suffix=Skel --stub-suffix=Stub --idl-file=%%x
for %%x in (*.idl) do $(rtm_idlc) $(rtm_idlflags) %%x
"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ PreprocessorDefinitions="USE_stub_in_nt_dll;WIN32;_DEBUG;_CONSOLE;__WIN32__;__x86__;_WIN32_WINNT=0x0400;__NT__;__OSVERSION__=4;_CRT_SECURE_NO_DEPRECATE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ UsePrecompiledHeader="0"
+ WarningLevel="3"
+ Detect64BitPortabilityProblems="true"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="$(rtm_libd)"
+ OutputFile="$(OutDir)\FlexiportComp.exe"
+ LinkIncremental="2"
+ GenerateDebugInformation="true"
+ SubSystem="1"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCWebDeploymentTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="$(ProjectDir)FlexiportComp\$(ConfigurationName)"
+ IntermediateDirectory="FlexiportComp\$(ConfigurationName)"
+ ConfigurationType="1"
+ CharacterSet="0"
+ InheritedPropertySheets="$(SolutionDir)rtm_config.vsprops;$(SolutionDir)user_config.vsprops"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ CommandLine="set PATH=$(rtm_path);%PYTHON_ROOT%\\;%PATH%
for %%x in (*.idl) do rtm-skelwrapper.py --include-dir="" --skel-suffix=Skel --stub-suffix=Stub --idl-file=%%x
for %%x in (*.idl) do $(rtm_idlc) $(rtm_idlflags) %%x
"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ PreprocessorDefinitions="USE_stub_in_nt_dll;WIN32;NDEBUG;_CONSOLE;__WIN32__;__x86__;_WIN32_WINNT=0x0400;__NT__;__OSVERSION__=4;_CRT_SECURE_NO_DEPRECATE"
+ RuntimeLibrary="2"
+ UsePrecompiledHeader="0"
+ WarningLevel="3"
+ Detect64BitPortabilityProblems="true"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="$(rtm_lib)"
+ OutputFile="$(OutDir)\FlexiportComp.exe"
+ LinkIncremental="1"
+ GenerateDebugInformation="false"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ LinkTimeCodeGeneration="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCWebDeploymentTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ CommandLine="if NOT EXIST "$(SolutionDir)\\components" mkdir "$(SolutionDir)\\components"
copy "$(OutDir)\\FlexiportComp.exe" "$(SolutionDir)\\components"
"
+ />
+
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ UniqueIdentifier="{83C68BD7-4D8B-11DD-B30F-001D090CD254}"
+ >
+ <File
+ RelativePath="Flexiport.cpp"
+ >
+ </File>
+ <File
+ RelativePath="FlexiportComp.cpp"
+ >
+ </File>
+ <File
+ RelativePath="flexiportSkel.cpp"
+ >
+ </File>
+ <File
+ RelativePath="flexiportSVC_impl.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Header Files"
+ Filter="h;hpp;hxx;hm;inl;inc;xsd"
+ UniqueIdentifier="{83C68D14-4D8B-11DD-8740-001D090CD254}"
+ >
+ <File
+ RelativePath="Flexiport.h"
+ >
+ </File>
+ <File
+ RelativePath="flexiportSkel.h"
+ >
+ </File>
+ <File
+ RelativePath="flexiportSVC_impl.h"
+ >
+ </File>
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>
Added: openrtm/trunk/flexiport/Flexiport_vc8.sln
===================================================================
--- openrtm/trunk/flexiport/Flexiport_vc8.sln (rev 0)
+++ openrtm/trunk/flexiport/Flexiport_vc8.sln 2009-09-30 02:25:28 UTC (rev 444)
@@ -0,0 +1,29 @@
+Microsoft Visual Studio Solution File, Format Version 9.00
+# Visual Studio 2005
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "FlexiportComp", "FlexiportComp_vc8.vcproj", "{83A92EE1-4D8B-11DD-AA7E-001D090CD254}"
+ ProjectSection(ProjectDependencies) = postProject
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Flexiport", "Flexiport_vc8.vcproj", "{83B88FAE-4D8B-11DD-87A8-001D090CD254}"
+ ProjectSection(ProjectDependencies) = postProject
+ EndProjectSection
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Release|Win32 = Release|Win32
+ Debug|Win32 = Debug|Win32
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {83A92EE1-4D8B-11DD-AA7E-001D090CD254}.Release|Win32.ActiveCfg = Release|Win32
+ {83A92EE1-4D8B-11DD-AA7E-001D090CD254}.Release|Win32.Build.0 = Release|Win32
+ {83A92EE1-4D8B-11DD-AA7E-001D090CD254}.Debug|Win32.ActiveCfg = Debug|Win32
+ {83A92EE1-4D8B-11DD-AA7E-001D090CD254}.Debug|Win32.Build.0 = Debug|Win32
+ {83B88FAE-4D8B-11DD-87A8-001D090CD254}.Release|Win32.ActiveCfg = Release|Win32
+ {83B88FAE-4D8B-11DD-87A8-001D090CD254}.Release|Win32.Build.0 = Release|Win32
+ {83B88FAE-4D8B-11DD-87A8-001D090CD254}.Debug|Win32.ActiveCfg = Debug|Win32
+ {83B88FAE-4D8B-11DD-87A8-001D090CD254}.Debug|Win32.Build.0 = Debug|Win32
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal
Added: openrtm/trunk/flexiport/Flexiport_vc8.vcproj
===================================================================
--- openrtm/trunk/flexiport/Flexiport_vc8.vcproj (rev 0)
+++ openrtm/trunk/flexiport/Flexiport_vc8.vcproj 2009-09-30 02:25:28 UTC (rev 444)
@@ -0,0 +1,219 @@
+<?xml version="1.0" encoding="shift_jis"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="8.00"
+ Name="Flexiport"
+ ProjectGUID="{83B88FAE-4D8B-11DD-87A8-001D090CD254}"
+ RootNamespace="Flexiport"
+ Keyword="Win32Proj"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="$(ProjectDir)Flexiport\$(ConfigurationName)"
+ IntermediateDirectory="Flexiport\$(ConfigurationName)"
+ ConfigurationType="2"
+ CharacterSet="0"
+ InheritedPropertySheets="$(SolutionDir)rtm_config.vsprops;$(SolutionDir)user_config.vsprops"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ CommandLine="set PATH=$(rtm_path);%PYTHON_ROOT%\\;%PATH%
for %%x in (*.idl) do rtm-skelwrapper.py --include-dir="" --skel-suffix=Skel --stub-suffix=Stub --idl-file=%%x
for %%x in (*.idl) do $(rtm_idlc) $(rtm_idlflags) %%x
"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ PreprocessorDefinitions="USE_stub_in_nt_dll;WIN32;_DEBUG;_WINDOWS;_USRDLL;__WIN32__;__NT__;__OSVERSION__=4;__x86__;_WIN32_WINNT=0x0400;_CRT_SECURE_NO_DEPRECATE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ UsePrecompiledHeader="0"
+ WarningLevel="3"
+ Detect64BitPortabilityProblems="true"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="$(rtm_libd)"
+ LinkIncremental="2"
+ GenerateDebugInformation="true"
+ SubSystem="2"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCWebDeploymentTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="$(ProjectDir)Flexiport\$(ConfigurationName)"
+ IntermediateDirectory="Flexiport\$(ConfigurationName)"
+ ConfigurationType="2"
+ CharacterSet="0"
+ InheritedPropertySheets="$(SolutionDir)rtm_config.vsprops;$(SolutionDir)user_config.vsprops"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ CommandLine="set PATH=$(rtm_path);%PYTHON_ROOT%\\;%PATH%
for %%x in (*.idl) do rtm-skelwrapper.py --include-dir="" --skel-suffix=Skel --stub-suffix=Stub --idl-file=%%x
for %%x in (*.idl) do $(rtm_idlc) $(rtm_idlflags) %%x
"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ PreprocessorDefinitions="USE_stub_in_nt_dll;WIN32;NDEBUG;_WINDOWS;_USRDLL;__WIN32__;__NT__;__OSVERSION__=4;__x86__;_WIN32_WINNT=0x0400;_CRT_SECURE_NO_DEPRECATE"
+ RuntimeLibrary="2"
+ UsePrecompiledHeader="0"
+ WarningLevel="3"
+ Detect64BitPortabilityProblems="true"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="$(rtm_lib)"
+ LinkIncremental="1"
+ GenerateDebugInformation="false"
+ SubSystem="2"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCWebDeploymentTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ CommandLine="if NOT EXIST "$(SolutionDir)\\components" mkdir "$(SolutionDir)\\components"
copy "$(OutDir)\\Flexiport.dll" "$(SolutionDir)\\components"
"
+ />
+
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ UniqueIdentifier="{83B891CA-4D8B-11DD-83CB-001D090CD254}"
+ >
+ <File
+ RelativePath="Flexiport.cpp"
+ >
+ </File>
+ <File
+ RelativePath="flexiportSkel.cpp"
+ >
+ </File>
+ <File
+ RelativePath="flexiportSVC_impl.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Header Files"
+ Filter="h;hpp;hxx;hm;inl;inc;xsd"
+ UniqueIdentifier="{83B8933A-4D8B-11DD-95D1-001D090CD254}"
+ >
+ <File
+ RelativePath="Flexiport.h"
+ >
+ </File>
+ <File
+ RelativePath="flexiportSkel.h"
+ >
+ </File>
+ <File
+ RelativePath="flexiportSVC_impl.h"
+ >
+ </File>
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>
Added: openrtm/trunk/flexiport/Flexiport_vc9.sln
===================================================================
--- openrtm/trunk/flexiport/Flexiport_vc9.sln (rev 0)
+++ openrtm/trunk/flexiport/Flexiport_vc9.sln 2009-09-30 02:25:28 UTC (rev 444)
@@ -0,0 +1,29 @@
+Microsoft Visual Studio Solution File, Format Version 10.00
+# Visual Studio 2008
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "FlexiportComp", "FlexiportComp_vc9.vcproj", "{83C689E1-4D8B-11DD-8F7C-001D090CD254}"
+ ProjectSection(ProjectDependencies) = postProject
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Flexiport", "Flexiport_vc9.vcproj", "{83D4D630-4D8B-11DD-AF26-001D090CD254}"
+ ProjectSection(ProjectDependencies) = postProject
+ EndProjectSection
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Release|Win32 = Release|Win32
+ Debug|Win32 = Debug|Win32
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {83C689E1-4D8B-11DD-8F7C-001D090CD254}.Release|Win32.ActiveCfg = Release|Win32
+ {83C689E1-4D8B-11DD-8F7C-001D090CD254}.Release|Win32.Build.0 = Release|Win32
+ {83C689E1-4D8B-11DD-8F7C-001D090CD254}.Debug|Win32.ActiveCfg = Debug|Win32
+ {83C689E1-4D8B-11DD-8F7C-001D090CD254}.Debug|Win32.Build.0 = Debug|Win32
+ {83D4D630-4D8B-11DD-AF26-001D090CD254}.Release|Win32.ActiveCfg = Release|Win32
+ {83D4D630-4D8B-11DD-AF26-001D090CD254}.Release|Win32.Build.0 = Release|Win32
+ {83D4D630-4D8B-11DD-AF26-001D090CD254}.Debug|Win32.ActiveCfg = Debug|Win32
+ {83D4D630-4D8B-11DD-AF26-001D090CD254}.Debug|Win32.Build.0 = Debug|Win32
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal
Added: openrtm/trunk/flexiport/Flexiport_vc9.vcproj
===================================================================
--- openrtm/trunk/flexiport/Flexiport_vc9.vcproj (rev 0)
+++ openrtm/trunk/flexiport/Flexiport_vc9.vcproj 2009-09-30 02:25:28 UTC (rev 444)
@@ -0,0 +1,219 @@
+<?xml version="1.0" encoding="shift_jis"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="9.00"
+ Name="Flexiport"
+ ProjectGUID="{83D4D630-4D8B-11DD-AF26-001D090CD254}"
+ RootNamespace="Flexiport"
+ Keyword="Win32Proj"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="$(ProjectDir)Flexiport\$(ConfigurationName)"
+ IntermediateDirectory="Flexiport\$(ConfigurationName)"
+ ConfigurationType="2"
+ CharacterSet="0"
+ InheritedPropertySheets="$(SolutionDir)rtm_config.vsprops;$(SolutionDir)user_config.vsprops"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ CommandLine="set PATH=$(rtm_path);%PYTHON_ROOT%\\;%PATH%
for %%x in (*.idl) do rtm-skelwrapper.py --include-dir="" --skel-suffix=Skel --stub-suffix=Stub --idl-file=%%x
for %%x in (*.idl) do $(rtm_idlc) $(rtm_idlflags) %%x
"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ PreprocessorDefinitions="USE_stub_in_nt_dll;WIN32;_DEBUG;_WINDOWS;_USRDLL;__WIN32__;__NT__;__OSVERSION__=4;__x86__;_WIN32_WINNT=0x0400;_CRT_SECURE_NO_DEPRECATE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ UsePrecompiledHeader="0"
+ WarningLevel="3"
+ Detect64BitPortabilityProblems="true"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="$(rtm_libd)"
+ LinkIncremental="2"
+ GenerateDebugInformation="true"
+ SubSystem="2"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCWebDeploymentTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="$(ProjectDir)Flexiport\$(ConfigurationName)"
+ IntermediateDirectory="Flexiport\$(ConfigurationName)"
+ ConfigurationType="2"
+ CharacterSet="0"
+ InheritedPropertySheets="$(SolutionDir)rtm_config.vsprops;$(SolutionDir)user_config.vsprops"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ CommandLine="set PATH=$(rtm_path);%PYTHON_ROOT%\\;%PATH%
for %%x in (*.idl) do rtm-skelwrapper.py --include-dir="" --skel-suffix=Skel --stub-suffix=Stub --idl-file=%%x
for %%x in (*.idl) do $(rtm_idlc) $(rtm_idlflags) %%x
"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ PreprocessorDefinitions="USE_stub_in_nt_dll;WIN32;NDEBUG;_WINDOWS;_USRDLL;__WIN32__;__NT__;__OSVERSION__=4;__x86__;_WIN32_WINNT=0x0400;_CRT_SECURE_NO_DEPRECATE"
+ RuntimeLibrary="2"
+ UsePrecompiledHeader="0"
+ WarningLevel="3"
+ Detect64BitPortabilityProblems="true"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="$(rtm_lib)"
+ LinkIncremental="1"
+ GenerateDebugInformation="false"
+ SubSystem="2"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCWebDeploymentTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ CommandLine="if NOT EXIST "$(SolutionDir)\\components" mkdir "$(SolutionDir)\\components"
copy "$(OutDir)\\Flexiport.dll" "$(SolutionDir)\\components"
"
+ />
+
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ UniqueIdentifier="{83D4D811-4D8B-11DD-B276-001D090CD254}"
+ >
+ <File
+ RelativePath="Flexiport.cpp"
+ >
+ </File>
+ <File
+ RelativePath="flexiportSkel.cpp"
+ >
+ </File>
+ <File
+ RelativePath="flexiportSVC_impl.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Header Files"
+ Filter="h;hpp;hxx;hm;inl;inc;xsd"
+ UniqueIdentifier="{83D4D95C-4D8B-11DD-8A9C-001D090CD254}"
+ >
+ <File
+ RelativePath="Flexiport.h"
+ >
+ </File>
+ <File
+ RelativePath="flexiportSkel.h"
+ >
+ </File>
+ <File
+ RelativePath="flexiportSVC_impl.h"
+ >
+ </File>
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>
Added: openrtm/trunk/flexiport/Makefile.Flexiport
===================================================================
--- openrtm/trunk/flexiport/Makefile.Flexiport (rev 0)
+++ openrtm/trunk/flexiport/Makefile.Flexiport 2009-09-30 02:25:28 UTC (rev 444)
@@ -0,0 +1,83 @@
+# -*- Makefile -*-
+#
+# @file Makefile.Flexiport# @brief RTComponent makefile for "Flexiport component"
+# @date $Date$
+#
+# This file is generated by rtc-template with the following argments.
+#
+# /home/geoff/bin/rtc-template -bcxx --module-name=Flexiport \
+# --module-desc=Flexiport hardware data communications component \
+# --module-version=0.0.1 --module-vendor=Geoffrey Biggs, AIST \
+# --module-category=DataProvider --module-comp-type=STATIC \
+# --module-act-type=SPORADIC --module-max-inst=10 \
+# --outport=recvData:TimedOctetSeq --inport=sendData:TimedOctetSeq \
+# --config=portOpts:std::string:type=serial,device=/dev/ttyACM0,timeout=1 \
+# --config=debug:int:0 --config=timeout_sec:int:1 \
+# --config=timeout_usec:int:0 --config=readable:bool:1 \
+# --config=writable:bool:1 --config=sleepTime:int:10 \
+# --config=bufferSize:int:0 --service=apiPort:flexiport:flexiport_intf \
+# --service-idl=flexiport.idl
+#
+#
+# $Id$
+#
+CXXFLAGS = `rtm-config --cflags` -I. `pkg-config --cflags flexiport`
+LDFLAGS = `rtm-config --libs` `pkg-config --libs flexiport`
+SHFLAGS = -shared
+
+IDLC = `rtm-config --idlc`
+IDLFLAGS = `rtm-config --idlflags` -I`rtm-config --prefix`/include/rtm/idl
+WRAPPER = rtm-skelwrapper
+WRAPPER_FLAGS = --include-dir="" --skel-suffix=Skel --stub-suffix=Stub
+
+SKEL_OBJ = flexiportSkel.o
+STUB_OBJ =
+IMPL_OBJ = flexiportSVC_impl.o
+OBJS = Flexiport.o $(SKEL_OBJ) $(STUB_OBJ) $(IMPL_OBJ)
+
+.SUFFIXES : .so
+
+all: Flexiport.so FlexiportComp
+
+
+.cpp.o:
+ rm -f $@
+ $(CXX) $(CXXFLAGS) -c -o $@ $<
+
+.o.so:
+ rm -f $@
+ $(CXX) $(SHFLAGS) -o $@ $(OBJS) $(LDFLAGS)
+
+FlexiportComp: FlexiportComp.o $(OBJS)
+ $(CXX) -o $@ $(OBJS) FlexiportComp.o $(LDFLAGS)
+
+
+clean: clean_objs clean_skelstub
+ rm -f *~
+
+clean_objs:
+ rm -f $(OBJS) FlexiportComp.o Flexiport.so FlexiportComp
+
+clean_skelstub:
+ rm -f *Skel.h *Skel.cpp
+ rm -f *Stub.h *Stub.cpp
+
+flexiportSkel.cpp : flexiport.idl
+ $(IDLC) $(IDLFLAGS) flexiport.idl
+ $(WRAPPER) $(WRAPPER_FLAGS) --idl-file=flexiport.idl
+flexiportSkel.h : flexiport.idl
+ $(IDLC) $(IDLFLAGS) flexiport.idl
+ $(WRAPPER) $(WRAPPER_FLAGS) --idl-file=flexiport.idl
+
+
+Flexiport.so: $(OBJS)
+Flexiport.o: Flexiport.h flexiportSkel.h flexiportSVC_impl.h
+FlexiportComp.o: FlexiportComp.cpp Flexiport.cpp Flexiport.h flexiportSkel.h flexiportSVC_impl.h
+
+flexiportSVC_impl.o: flexiportSVC_impl.cpp flexiportSVC_impl.h flexiportSkel.h flexiportStub.h
+flexiportSkel.o: flexiportSkel.cpp flexiportSkel.h flexiportStub.h
+flexiportStub.o: flexiportStub.cpp flexiportStub.h
+
+
+# end of Makefile
+
Added: openrtm/trunk/flexiport/README.Flexiport
===================================================================
--- openrtm/trunk/flexiport/README.Flexiport (rev 0)
+++ openrtm/trunk/flexiport/README.Flexiport 2009-09-30 02:25:28 UTC (rev 444)
@@ -0,0 +1,268 @@
+#======================================================================
+# RTComponent: Flexiport specificatioin
+#
+# OpenRTM-aist-0.4.2
+#
+# Date: Wed Jul 9 16:49:09 2008
+#
+# This file is generated by rtc-template with the following argments.
+#
+# /home/geoff/bin/rtc-template -bcxx --module-name=Flexiport \
+# --module-desc=Flexiport hardware data communications component \
+# --module-version=0.0.1 --module-vendor=Geoffrey Biggs, AIST \
+# --module-category=DataProvider --module-comp-type=STATIC \
+# --module-act-type=SPORADIC --module-max-inst=10 \
+# --outport=recvData:TimedOctetSeq --inport=sendData:TimedOctetSeq \
+# --config=portOpts:std::string:type=serial,device=/dev/ttyACM0,timeout=1 \
+...
[truncated message content] |