Skip to content

CNES/ccsdsmo-malgo

Repository files navigation

malgo

CCSDS MO MAL GO API AND IMPLEMENTATION

This project is an implementation of the CCSDS MO Message Abstraction Layer (MAL) Standard in Go language.

CCSDS Mission Operation implementations for other languages (e.g. C, Java, etc.) can be found on the CCSDS MO WebSite

Complete MAL specification can be found on the CCSDS website in the published documents section.

In particular:

ABOUT

This CCSDS MO MAL Go API was originally developed for the CNES, the French Space Agency, by ScalAgent, a french company specialized in distributed technologies. All contributions are welcome.

PROJECT DOCUMENTATION

A MAL/GO description and user's guide is available in the doc directory.

MAL/GO Description

This GO API basically includes 4 packages:

  • mal package defines all MAL Concepts: message, data types, etc.
  • mal/encoding package includes encoding technologies.
  • mal/transport package includes transport technologies.
  • mal/api defines the high level consumer and provider APIs.

MAL/GO QUICK INSTALLATION

go get github.com/juju/loggo
go get github.com/CNES/ccsdsmo-malgo

MAL/GO TEST

options: -v -timeout 1m

cd src
go test github.com/CNES/ccsdsmo-malgo/mal/encoding/binary
go test github.com/CNES/ccsdsmo-malgo/mal/encoding/splitbinary
go test github.com/CNES/ccsdsmo-malgo/mal/transport/invm
go test github.com/CNES/ccsdsmo-malgo/mal/transport/tcp
go test github.com/CNES/ccsdsmo-malgo/mal/api
go test github.com/CNES/ccsdsmo-malgo/mal/broker
go test github.com/CNES/ccsdsmo-malgo/tests/encoding
go test github.com/CNES/ccsdsmo-malgo/tests/issue1