NetcdfReporting Class Reference

A component which writes data reports to a netCDF file. More...

#include <NetcdfReporting.hpp>

Inheritance diagram for NetcdfReporting:
ReportingComponent

List of all members.

Public Types

typedef
RTT::DataFlowInterface::Ports 
Ports

Public Member Functions

 NetcdfReporting (const std::string &fr_name)
bool startHook ()
void stopHook ()
bool addMarshaller (RTT::Marshaller *headerM, RTT::Marshaller *bodyM)
 Adds a Plugin to receive incomming data.
bool removeMarshallers ()
 Remove and delete all added Marshallers.
Script Methods

virtual bool configureHook ()
 Implementation of TaskCore::configureHook().
virtual void cleanupHook ()
 Implementation of TaskCore::cleanupHook().
virtual bool screenComponent (const std::string &comp)
 Write state information of a component.
bool reportComponent (const std::string &component)
 Report all the data ports of a component.
bool unreportComponent (const std::string &component)
 Unreport the data ports of a component.
bool reportPort (const std::string &component, const std::string &port)
 Report a specific data port of a component.
bool unreportPort (const std::string &component, const std::string &port)
 Unreport a specific data port of a component.
bool reportData (const std::string &component, const std::string &dataname)
 Report a specific data source of a component.
bool unreportData (const std::string &component, const std::string &datasource)
 Unreport a specific data source of a component.
void snapshot ()
 This real-time function makes copies of the data to be reported.
void cleanReport ()
 Implementation of TaskCore::configureHook().

Protected Types

typedef boost::tuple
< std::string,
RTT::DataSourceBase::shared_ptr,
boost::shared_ptr
< RTT::CommandInterface >
, RTT::DataSourceBase::shared_ptr,
std::string > 
DTupple
typedef std::vector< DTupple > Reports
 Stores the 'datasource' of all reported items as properties.
typedef std::vector< std::pair
< boost::shared_ptr
< RTT::Marshaller >
, boost::shared_ptr
< RTT::Marshaller > > > 
Marshallers

Protected Member Functions

bool screenImpl (const std::string &comp, std::ostream &output)
 This method writes out the status of a component's interface.
bool reportDataSource (std::string tag, std::string type, RTT::DataSourceBase::shared_ptr orig)
bool unreportDataSource (std::string tag)
void makeReport ()
virtual void updateHook ()
 This not real-time function processes the copied data.

Protected Attributes

RTT::Property< std::string > repfile
 File name of netCDF file.
int ncid
 Netcdf ID.
int dimsid
 Dimension ID of unlimited dimension.
RTT::Marshaller * fheader
RTT::Marshaller * fbody
Reports root
Marshallers marshallers
RTT::PropertyBag report
RTT::Property< bool > autotrigger
RTT::Property< std::string > config
RTT::Property< bool > writeHeader
RTT::Property< bool > decompose
RTT::Property< bool > synchronize_with_logging
RTT::Property< PropertyBag > report_data
RTT::TimeService::ticks starttime
RTT::Property
< RTT::TimeService::Seconds > 
timestamp

Detailed Description

A component which writes data reports to a netCDF file.

Definition at line 13 of file NetcdfReporting.hpp.


Member Function Documentation

bool addMarshaller ( RTT::Marshaller *  headerM,
RTT::Marshaller *  bodyM 
) [inherited]

Adds a Plugin to receive incomming data.

The marshallers become owned by this component.

Parameters:
header A marshaller which writes out a header when this component is started. May be null (0).
body A marshaller wich will get periodically a serialisation request to process incomming data. May be null(0).

example: addMarshaller( new HeaderMarshaller(), new ContentsMarshaller() );

Referenced by ConsoleReporting::ConsoleReporting().

void cleanReport (  )  [inherited]

Implementation of TaskCore::configureHook().

Calls load().

Definition at line 427 of file ReportingComponent.cpp.

Referenced by ReportingComponent::updateHook().

void cleanupHook (  )  [virtual, inherited]

Implementation of TaskCore::cleanupHook().

Calls store() and clears the reporting configuration.

Definition at line 126 of file ReportingComponent.cpp.

bool configureHook (  )  [virtual, inherited]

Implementation of TaskCore::configureHook().

Calls load().

Reimplemented in TcpReporting.

Definition at line 132 of file ReportingComponent.cpp.

References ReportingComponent::reportComponent(), ReportingComponent::reportData(), and ReportingComponent::reportPort().

bool screenComponent ( const std::string &  comp  )  [virtual, inherited]

Write state information of a component.

This method must be overridden by a subclass to be useful.

Reimplemented in ConsoleReporting, and FileReporting.

Definition at line 175 of file ReportingComponent.cpp.

Referenced by ReportingComponent::ReportingComponent().

bool startHook (  )  [virtual]

Create a new netcdf dataset in the NC_CLOBBER mode. This means that the nc_create function overwrites any existing dataset.

Create a new dimension to an open netcdf dataset, called time. Size NC_UNLIMITED indicates that the length of this dimension is undefined.

Leave define mode and enter data mode.

Reimplemented from ReportingComponent.

Definition at line 25 of file NetcdfReporting.cpp.

void stopHook (  )  [virtual]

Close netcdf dataset

Reimplemented from ReportingComponent.

Definition at line 66 of file NetcdfReporting.cpp.


The documentation for this class was generated from the following files:
Generated on Thu Dec 23 15:05:29 2010 for OrocosComponentLibrary by  doxygen 1.6.3