INTRODUCTION
Overview
Download and Install
Quick Start
Documentation
Publications

NONFRAMEWORK CODE
Driver Interfaces
Drivers
Libraries
Utilities

FRAMEWORK CODE
Interfaces
Components
Libraries
Utilities

Full Software Listings

DEVELOPER
Tutorials
Examples
Dev Guide
Dashboard

PEOPLE
Contributors
Users

SourceForge.net Logo
Project
Download
Mailing lists

 

         

orcacm Namespace Reference

Utilities for navigating the Orca Component Model (OCM). More...

Classes

struct  ResultHeader
 Brief version of operation result. More...
struct  OperationHeader
struct  OperationData
struct  ProvidesHeader
struct  RequiresHeader
struct  InterfaceData
struct  ComponentHeader
struct  ComponentData
struct  PlatformHeader
struct  PlatformData
struct  HomeHeader
 Information about a Home object. More...
struct  RegistryFlatData
 Registry data which lists components. More...
struct  RegistryHierarchicalData1
 Registry data which lists platforms. More...
struct  RegistryHierarchicalData2
 Registry data which lists components on one platform. More...
struct  RegistryHomeData
 Registry data. More...

Functions

std::string connectionToLocalAddress (const std::string &s)
 Parses a string returned by Ice::Connection to extract the local address.
std::string connectionToRemoteAddress (const std::string &s)
 Parses a string returned by Ice::Connection to extract the remote address.
std::string stringToIceGridInstanceName (const std::string &s)
Lookup Functions



bool pingObject (const orcaice::Context &context, const std::string &objectId)
bool pingAdminObject (const orcaice::Context &context, const std::string &adminId, const std::string &facetName)
RegistryHomeData getRegistryHomeData (const orcaice::Context &context, const std::string &locatorString)
void pingHomeObjects (RegistryHomeData &data, const orcaice::Context &context, gbxutilacfr::Stoppable *activity)
ComponentData getComponentData (const orcaice::Context &context, const std::string &adapterId)
ComponentData getComponentData (const orcaice::Context &context, const orca::FQComponentName &component)
ComponentData getComponentHomeData (const orcaice::Context &context, const Ice::ObjectPrx &ohome)
ProvidesHeader getAdminProvidesHeader (const Ice::ObjectPrx &homePrx, const orca::FQInterfaceName &fqName)
ProvidesHeader getProvidesHeader (const orcaice::Context &context, const orca::FQInterfaceName &fqName)
RequiresHeader getRequiresHeader (const orcaice::Context &context, const orca::FQInterfaceName &fqName)
RegistryHierarchicalData1 home2hierarch1 (const RegistryHomeData &registryHomeData)
RegistryHierarchicalData2 home2hierarch2 (const RegistryHomeData &registryHomeData, const PlatformHeader &platform, bool tryToPing, int tracePing)

Detailed Description

Utilities for navigating the Orca Component Model (OCM).

This namespace is part of a library which helps navigate the Orca Component Model (OCM).

See also:
libOrcaCompModel

Function Documentation

ProvidesHeader orcacm::getAdminProvidesHeader ( const Ice::ObjectPrx &  homePrx,
const orca::FQInterfaceName &  fqName 
)

This a special version of the function above, suitable for interfaces which are actually facets of ADmin interface. We now have 3 such standard interfaces: Tracer, Status, Home. Tries to connect to the specified interface and, if successful, gets its ID. If connection fails for some reason, the Object ID is set to "unknown".

ComponentData orcacm::getComponentHomeData ( const orcaice::Context context,
const Ice::ObjectPrx &  home 
)

Connects to Home interface of the specified component and gets its deployment and interface information. If connection fails for some reason, isReachable field of ComponentData is set to FALSE.

If you already have an instance of RegistryData, do this:

getComponentHomeData( context, registryData.homes[i].proxy )

Referenced by orcaqcm::GetComponentsJob::execute().

ProvidesHeader orcacm::getProvidesHeader ( const orcaice::Context context,
const orca::FQInterfaceName &  fqName 
)

Tries to connect to the specified interface and, if successful, gets its ID. If connection fails for some reason, the Object ID is set to "unknown".

RegistryHomeData orcacm::getRegistryHomeData ( const orcaice::Context context,
const std::string &  locatorString 
)

Connects to IceGrid/Query interface of the specified registry and gets the list of objects of type orca::Home. If connection fails for some reason, isReachable field of RegistryData is set to FALSE.

When using the default registry, you can obtain the locatorString like this: communicator()->getDefaultLocator()->ice_toString().

This function does not try to ping home objects and sets all isReachable flags to TRUE. Use pingHomeObjects() to verify if this is true.

Referenced by orcaqcm::GetComponentsJob::execute().

RequiresHeader orcacm::getRequiresHeader ( const orcaice::Context context,
const orca::FQInterfaceName &  fqName 
)

Tries to connect to the specified interface and, if successful, gets its ID. If connection fails for some reason, the Object ID is set to "unknown".

bool orcacm::pingAdminObject ( const orcaice::Context context,
const std::string &  adminId,
const std::string &  facetName 
)

Same as above but is specialized for interfaces deployed through the component's Admin interface. Returns TRUE if successful.

void orcacm::pingHomeObjects ( RegistryHomeData &  data,
const orcaice::Context context,
gbxutilacfr::Stoppable *  activity 
)

Attempts to ping each Home object and set isReachable field depending on the outcome.

It's recommended that a pointer to a Stoppable interface is provided (e.g. current thread), so that a potentially long process can be interrupted. It is safe to pass a NULL pointer, in which case it is ignored.

bool orcacm::pingObject ( const orcaice::Context context,
const std::string &  objectId 
)

Attempts to ping the well-known object with specified identity. Returns TRUE if successful.

std::string orcacm::stringToIceGridInstanceName ( const std::string &  s  ) 

Parses the stringified proxy of an IceGrid well-known object, e.g. MyGrid/Locator and extracts just the IceGrid Instance Name, e.g. MyGrid.

 

Webmaster: Tobias Kaupp (tobasco at users.sourceforge.net)


Generated for Orca Robotics by  doxygen 1.4.5