Skip to main content

BlueBrain I/O Library

Project description

Brion

DOI

Welcome to Brion, a C++ project for read and write access to Blue Brain data structures, including BlueConfig/CircuitConfig, Circuit, CompartmentReport, Mesh, Morphology, Synapse and Target files.

Brion can be retrieved by cloning the source code. The [latest API documentation] (http://bluebrain.github.io/Brion-1.9/index.html) can be found on bluebrain.github.io. Additional documentation exists for the [Python wrapping of Brain] (python/index.html).

To keep track of the changes between releases check the [changelog](@ref Changelog).

Features

Brion provides two libraries Brion and Brain. The former is a collection of file readers and writers intended for low level access to the data model. The latter is a set of higher level classes that wrap low level data objects with a use-case oriented API.

A python package to access the library can also be built and installed with pip. The package is available in PyPi as well, under the name "brion". Please, note that the python package requires the user to have the python development package installed on their system.

IO library

This is the core library provided by Brion. It includes classes for reading and writing files which store the Blue Brain data model.

  • Fast and low-overhead read access to:
    • Blue configs (brion::BlueConfig)
    • Circuit description (brion::Circuit)
    • H5 Synapses data (brion::SynapseSummary, brion::Synapse)
    • Target (brion::Target)
    • BBP binary meshes (brion::Mesh)
    • BBP H5 morphologies and SWC morphologies (brion::Morphology)
    • Compartment reports (brion::CompartmentReport)
    • Spike reports (brion::SpikeReport)
  • Fast and low-overhead write access to:
    • Compartment reports (brion::CompartmentReport)
    • BBP binary meshes (brion::Mesh)
    • BBP H5 morphologies (brion::Morphology)
    • Spike reports (brion::SpikeReport)
  • Basic [data types](@ref brion/types.h) to work with the loaded data using Boost, GLM.

Disclaimer

Although Brion is capable of reading SONATA format nodes, edges and reports, the use is experimental and not supported officially. To read the SONATA format, it is encouraged the usage of libsonata (https://github.com/BlueBrain/libsonata)

High level library

The higher level library is called Brain and it provides:

  • brain::Circuit to facilitate loading information about cells, morphologies (in local and global circuit coordinates) and synapses.
  • brain::neuron::Morphology with higher level functions to deal with morphologies.
  • brain::Synapses and brain::Synapse for array and object access to synapses.

Building

Brion is a cross-platform library, designed to run on any modern operating system, including all Unix variants. Brion uses CMake to create a platform-specific build environment. The following platforms and build environments are tested:

  • Linux: Ubuntu 16.04 or above, RHEL 6.8 (Makefile, Ninja)

Building from source is as simple as:

git clone --recursive https://github.com/BlueBrain/Brion.git
mkdir Brion/build
cd Brion/build
cmake -GNinja -DCMAKE_BUILD_TYPE=Release -DEXTLIB_FROM_SUBMODULES=ON ..
ninja

Funding & Acknowledgment

The development of this software was supported by funding to the Blue Brain Project, a research center of the École polytechnique fédérale de Lausanne (EPFL), from the Swiss government’s ETH Board of the Swiss Federal Institutes of Technology.

This project has received funding from the European Union’s FP7-ICT programme under Grant Agreement No. 604102 (Human Brain Project RUP).

This project has received funding from the European Union's Horizon 2020 Framework Programme for Research and Innovation under the Specific Grant Agreement No. 720270 (Human Brain Project SGA1).

This project is based upon work supported by the King Abdullah University of Science and Technology (KAUST) Office of Sponsored Research (OSR) under Award No. OSR-2017-CRG6-3438.

License

Brion is licensed under the LGPL, unless noted otherwise, e.g., for external dependencies. See file LICENSE.txt for the full license.

Copyright (c) 2008-2021 Blue Brain Project/EPFL

This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License version 3 as published by the Free Software Foundation.

This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

brion-3.3.5-cp310-cp310-manylinux_2_24_x86_64.whl (14.9 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.24+ x86-64

brion-3.3.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (16.6 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

brion-3.3.5-cp39-cp39-manylinux_2_24_x86_64.whl (8.6 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.24+ x86-64

brion-3.3.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (9.2 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

File details

Details for the file brion-3.3.5-cp310-cp310-manylinux_2_24_x86_64.whl.

File metadata

  • Download URL: brion-3.3.5-cp310-cp310-manylinux_2_24_x86_64.whl
  • Upload date:
  • Size: 14.9 MB
  • Tags: CPython 3.10, manylinux: glibc 2.24+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.1 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.3

File hashes

Hashes for brion-3.3.5-cp310-cp310-manylinux_2_24_x86_64.whl
Algorithm Hash digest
SHA256 3e48299e4e7a1a6800caa5eb66530fab5bc5351f9ccd9a6758dedc53b13734ea
MD5 2e7039cd564d71f7f1ea0a6c877a67c2
BLAKE2b-256 0b41fd92006922449c4e18e8be9432faa7245c4ce2aff0833183757b8e60192a

See more details on using hashes here.

Provenance

File details

Details for the file brion-3.3.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for brion-3.3.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 23250704688d217ea10224cb9bc94ad07f8865bd4afdae2ee3df3e9bb8d71952
MD5 90bc580393374d044bdab502a0e94eda
BLAKE2b-256 392f03674537cd49d3345848987dc7e71ddc1059934caec168bcf2fa2ed6ee48

See more details on using hashes here.

Provenance

File details

Details for the file brion-3.3.5-cp39-cp39-manylinux_2_24_x86_64.whl.

File metadata

  • Download URL: brion-3.3.5-cp39-cp39-manylinux_2_24_x86_64.whl
  • Upload date:
  • Size: 8.6 MB
  • Tags: CPython 3.9, manylinux: glibc 2.24+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.1 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.3

File hashes

Hashes for brion-3.3.5-cp39-cp39-manylinux_2_24_x86_64.whl
Algorithm Hash digest
SHA256 09efe2c140b0163601d651ab0f3258b8f05fb08f5e5d0116f6f8cf7cd8bdf78c
MD5 6c67cb3a50634e9115b04fe467d5b119
BLAKE2b-256 5957688b4519169e859aa97ddd5889e40930861fc09ac5aca95126bfbaec95ca

See more details on using hashes here.

Provenance

File details

Details for the file brion-3.3.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for brion-3.3.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f556eadddc22705bf8f7798043ff3215df40b4e827983332f94ddb56397ac7de
MD5 c8faf3c64b93171bf5d83fae75b15a81
BLAKE2b-256 fc20c621982d635a7ea12501cff142668cf2e8c43656f5d6b695e288bf3adedc

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page