Core

Product Summary: 
OpenSplice DDS DCPS, OpenSplice DDS DLRL and OpenSplice DDSI2

OpenSplice Core

The OpenSplice DDS Core is a full implementation of both the OMG-DDS rev1.2 standard (both its DCPS and DLRL profiles) and the OMG-DDSI/RTPS v2.1 interoperable wire-protocol standards.

The DCPS API’s come with C, C++, Java and C# language bindings and the DLRL API is available for C++ and Java.

The OpenSplice Core product for both Community and Commercial Editions are licensed under LGPLv3 but the Commercial Edition (with the most up to date code base) requires an active subscription or commercial license. There are NO Run-Time fees for the OpenSplice Core product.

OpenSplice DDS Core

  • OpenSplice DDS DCPS is a LGPLv3 DDS rev1.2 compliant Data Centric Publish Subscribe (DCPS) implementation with API's for C, C++, C# and Java.

    The DDS DCPS layer is a set of API’s that present a coherent set of standardized “profiles” that target real-time information-availability for domains ranging from small-scale embedded control systems right up to large-scale enterprise information management systems.

    OpenSplice DDS DCPS

    Each DDS-DCPS profile adds distinct capabilities that define the service-levels offered by DDS in order to realize the 'right data at the right time at the right place' paradigm:

    • Minimum Profile: this 'basic' profile utilizes the well-known publish/subscribe paradigm to implement highly efficient information-dissemination between multiple publishers and subscribers that share interest in so-called 'topics'. Topics are the basic data-structures expressed in the OMG's IDL-language (allowing for automatic generation of typed 'Readers' and 'Writers' of those 'topics' for any mix of languages desired).  This profile also includes the QoS framework that allows the middleware to 'match' requested and offered Quality of Service parameters (the minimum profile offering basic QoS attributes such as 'reliability', 'ordering' or 'urgency').
    • Ownership Profile: this 'replication' profile offers support for replicated publishers of the same information by allowing a 'strength' to be expressed by each publisher so that only the 'highest-strength' information will be made available to interested parties.
    • Content Subscription Profile: this 'content awareness' profile offers powerful features to express fine-grained interest in specific information content (content-filters). This profile also allows applications to specify projection-views and aggregation of data as well as dynamic queries for subscribed 'topics' by utilizing a subset of the well-known SQL language whilst preserving the real-time requirements for the information-access.
    • Persistence Profile: this 'durability' profile offers transparent and fault-tolerant availability of ‘non-volatile’ data that may either represent persistent ‘settings’ (to be stored on mass-media throughout the distributed system) or ‘state’ preserved in a fault-tolerant manner outside the scope of transient publishers (allowing late-joining of applications and dynamic re-allocation).
  • The OpenSplice DDS DLRL API provides the functionality of the DDS specification’s optional ‘Object model profile’. The OpenSplice DDS DLRL provides advanced information management capabilities by allowing the mapping of a Topic information model onto a user-defined object model, thus offering the advantages of an object-oriented programming interface to application developers (e.g. data-encapsulation, inheritance and object navigation).

    OpenSplice DDS DLRL Data Local Reconstruction Layer

    The features of the OpenSplice DDS DLRL API can be summarized as:

    • More intuitive information access is facilitated by being able to present data in a local (application-specific) object model; using the native language constructs of your programming language to do so.
    • The data objects, and the navigable relationships between them, are mapped onto the underlying Topic model using an XML mapping file. The DLRL Module can then manage the lifecycle, state and relationships between these objects transparently. (It is also possible to, conversely, automatically generate a dedicated Topic model that fits an existing object model).
    • The object model allows you to encapsulate all information, offering only your user-defined accessor methods to manipulate their state. (But any other user-defined method may be added as well).
    • An extensive selection mechanism allows you to specify a search criterion to easily locate objects.  It can notify you when an object matches your criterion and also when it no longer satisfies it.
    • A fine-grained listener mechanism allows you to be notified of each creation/modification/deletion of an object.

    The OpenSplice DDS DLRL implementation is unique in the fact that it is the only available implementation that is really integrated into the DCPS. The advantages of this approach are that it has a relatively small overhead when compared to plain DCPS usage, both in terms of performance and memory consumption. This is possible because of one shared administration for both DCPS and DLRL, limiting the amount of time needed to process incoming samples and limiting the amount of memory required to store the information contained in each sample.

  • OpenSplice DDSI2 service is part of the OpenSplice DDS Core and provides a fully compliant implementation of the OMG-DDSI/RTPS rev2.1 inteoperable wire-protocol standard. OpenSplice DDSI2 offers out-of-the-box interoperability with other DDS vendors without any configuration needs.

    OpenSplice DDSI2

    OpenSplice DDSI2 can be used both as an alternative as well as in-conjunction-with the optional OpenSplice RTNetworking service that offers additional capabilities with regard to deterministic communication in large-scale networks.

     

Download an Evaulation