Coder Social home page Coder Social logo

sjko / gnss-metadata-standard Goto Github PK

View Code? Open in Web Editor NEW

This project forked from ionmetadataworkinggroup/gnss-metadata-standard

0.0 2.0 0.0 33.97 MB

GNSS Sofware Defined Receiver Metadata Standard

Home Page: http://sdr.ion.org/

License: GNU Lesser General Public License v3.0

CMake 1.73% HTML 19.95% XSLT 30.22% MATLAB 3.12% C 0.18% C++ 44.81%

gnss-metadata-standard's Introduction

GNSS-Metadata-Standard

In recent years there has been a proliferation of software defined radio (SDR) data collection systems and processing platforms designed for Global Navigation Satellite System (GNSS) receiver applications or those that support GNSS bands. For post-processing, correctly interpreting the GNSS SDR sampled datasets produced or consumed by these systems has historically been a cumbersome and error-prone process. This is because these systems necessarily produce datasets of various formats, the subtleties of which are often lost in translation when communicating between the producer and consumer of these datasets. The GNSS-Metadata-Standard is an effort to standardize the metadata associated with GNSS SDR sampled data files and the layout of the binary sample files.

The GNSS SDR Metadata Standard defines parameters and schema to express the contents of SDR sample data files. The standard is designed to promote the interoperability of GNSS SDR data collection systems and processors. The metadata files are human readable and in XML format. This repository hosts a set of compliant open source C++ API for reading metadata and binary samples.

The repository contains two libraries:

  1. An API library that can be used for loading and writing Metadata to/from file and
  2. A converter library that can be used for parsing packed binary SDR data and converting it to machine-format (int, float, etc.) streams

A selectoin of demonstration applicatoins are provided, including:

  1. A demonstration of reading/writing XML Metadata, named TestAPI
  2. A demonstration of the basic binary convertion utilities, named DemoConverter
  3. A simple binary sample file converter utility, named Converter that can be used for converting packed binary SDR files to mahcine-format (int, float, etc.) files

The 'master' branch is frozen between major updates, and opdated once or twice annually. Ongoing development and latests updates are available on the 'devel' branch. If you wish to submit code or pull-requests, please use the 'devel' branch. Pull requests for 'master' will be rejected during ongoing review and RFC process. For more information on the standard, and to download sample data files, please visit http://sdr.ion.org/

This project uses CMake. To create a project for your IDE follow the steps below.

Windows:

cd GNSS-Metadata-Standard
mkdir build
cd build
cmake ../ -G "Visual Studio 14 2015 Win64"
Then open the .sln project and build the 'Release' configuration

Mac OS (Xcode):

cd GNSS-Metadata-Standard
mkdir build
cd build
cmake ../ -G Xcode
Then open the .xcodeproj project and build the 'Release' configuration

Unix (make) or Mac OS (make):

cd GNSS-Metadata-Standard
mkdir build
cd build
cmake ../ -DCMAKE_BUILD_TYPE=Release
make

To thest the code, change to the 'install' directory and run the acompanying matlab/octave script called 'check_converter.m'.
If everything has build OK then you should see the following output:

check_converter
Deleting old files: ......Done.
Running the test converter ("Converter"): Checking the converted output:
CODC: OK
FHG: OK
FITWDP: OK
IFEN: OK
JRC: OK
TRIGR: OK

Test completed.

To add the the "GNSS-Metadata-Standard Converter" to your CMake managed project, add the following lines to your CMakeLists.txt file:

include_directories(
path_to_where_you_copied_the_repository/GNSS-Metadata-Standard/source/api/inc
path_to_where_you_copied_the_repository/GNSS-Metadata-Standard/source/converter/inc
)
add_subdirectory(
path_to_where_you_copied_the_repository/GNSS-Metadata-Standard/source
)

target_link_libraries( your_library_or_executable api xml cnv )

and include the following in your main.cpp file

#include "GnssMetadata.h"
#include "Converter.h"

To add the only the "GNSS-Metadata-Standard API" to your CMake managed project,
add the following lines to your CMakeLists.txt file:

include_directories(
path_to_where_you_copied_the_repository/GNSS-Metadata-Standard/source/api/inc
)
add_subdirectory(
path_to_where_you_copied_the_repository/GNSS-Metadata-Standard/source
)

target_link_libraries( your_library_or_executable api xml )

and include the following in your main.cpp file

#include "GnssMetadata.h"

gnss-metadata-standard's People

Contributors

jamestcurran avatar keysersoze1 avatar tompano33 avatar

Watchers

James Cloos avatar sunjunko avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.