Skip to content

proio-org/java-proio

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

proio for Java

Build Status codecov Codacy Badge

Proio is an event-oriented streaming data format based on Google's protocol buffers (protobuf). Proio aims to add event structure and additional compression to protobuf in a way that supports event data model serialization in medium- and high-energy physics. Additionally, proio

  • supports self-descriptive data,
  • is stream compatible,
  • is language agnostic,
  • and brings along many advantages of protobuf, including forward/backward compatibility.

For detailed information on the proio format and introductory information on the software implementations, please see DOI 10.1016/j.cpc.2019.03.018. This work was inspired and influenced by LCIO, ProMC (Sergei Chekanov), and EicMC (Alexander Kiselev)

Also see the main proio repository for additional information information.

Installation

At this time, proio is not yet available in the maven central repository. However, maven can be used to easily build a jar file.

Requirements

  • Maven
  • Protobuf compiler (protoc)

Building the code

git submodule init
git submodule update
mvn install

Running the "ProIOBrowser" tool

This is an initial draft of a GUI browser by Jose Alcaraz (@chuwyjr).

java -cp target/proio-*-jar-with-dependencies.jar proio.ProIOBrowser