Skip to content

Layered Approach to Service Architectures for a Global Network Environment (LASAGNE)

License

Notifications You must be signed in to change notification settings

LASAGNE-Open-Systems/LASAGNE-Core

Repository files navigation

LASAGNE-Core

Layered Approach to Service Architectures for a Global Network Environment (LASAGNE)

About LASAGNE

LASAGNE is a pattern-based framework for parallel and distributed computing

  • Multi-threaded distributing computing platform in C++
  • Adopts service-oriented principles and behaviour supported via metaprogramming techniques
  • Extension mechanisms supported on a loadable, configurable infrastructure
  • Provides hardware and operating system abstraction for native code execution
    • No explicit need for virtualisation
    • Uses the concept of a container (gestalt) for hosting components to applications
  • "Don't need LASAGNE to talk to LASAGNE"
    • Core inclusions in LASAGNE are only permitted if they are based on openly published material
    • Uses open standard middleware technology (doesn't lock components into using them though)
  • Domain agnostic
    • Core of LASAGNE does not mandate a data model representation

Status

develop master
Travis CI Build Status Build Status g++ 4.8.5/7.2.0, clang 5.0.1
AppVeyor Build status Build status Visual Studio 2015/2017

Getting Started

Prerequisites

  • Required
  • Optional
    • OpenDDS 3.12 OpenDDS | GitHub
    • RTI DDS 5.3.0 (plus optional CORBA Compatibility Kit)
    • CoreDX 4.0.12

Installation

See the instructions in docs/html for the appropriate platform

Contributing

Contributions can be made following the common Integration-Manager Workflow. The LASAGNE Core Team acts in the role of the Integration Manager. Submissions will only be considered for review and possible inclusion if they meet the following criteria:

  • Successfully pass all automated tests and checks
  • Comply with the license agreement
  • Approach is based upon openly available and published material The intent is to follow a branching and release strategy along the lines of the established GitFlow.

Important Note on Workflow

Please make sure to target 'develop' as the default target for pull requests to fit in with this approach. There may be times where bug fixes are applied to staged release branches but the majority of the time, 'develop' is the target.

License

The LASAGNE Core is licensed under the terms of the LGPL-3.0 license. See the LICENSE file for details.

Exceptions

  • LDBC/SQLite/sqlite3 is provided copyright free from SQLite.org