Aller au contenu principal

Implémentations

Implémentations OSF​

OSF est un format ouvert — il est volontairement conçu de façon assez simple pour pouvoir être implémenté de manière autonome dans n'importe quel langage. Ce chapitre décrit les implémentations concrètes du format par langage de programmation : ce qu'elles savent faire, comment les installer ou les construire, et où se trouve le code source.

À distinguer du chapitre Intégrations : il y est question du raccordement à des écosystèmes (Arrow, PyTorch, MCP …), et non des implémentations de langage elles-mêmes.

Aperçu de l'état​

Légende : ✅ disponible · 🚧 en développement actif · 📋 prévu

ImplémentationÉtatDescription succincte
Delphi✅Implémentation de référence — bibliothèque complète, démos et la CLI osftool (Windows / RAD Studio)
Rust (osf-core)✅Lecture, écriture et OSFZ transparent ; également fondation du raccordement Python
Python (osfdata)✅Bindings PyO3 sur le cœur Rust, intégration NumPy ; voir Intégration Python
C++✅Implémentation C++17 autonome — reader, les deux writers, ABI C ; CI sous Linux/macOS/Windows. Manuel détaillé du développeur sous C++ en détail
Java✅Complète — Java 21, module JPMS, les deux writers OSF5, OSFZ transparent, profil d'intégrité crc ; avec osf-cli et osf-viewer
Autres langages📋C — prévu

L'état le plus récent est tenu à jour par le dépôt sur GitHub.

Par où commencer ?​

  • Analyser des données (Python/notebook, Pandas, ML) : le paquet osfdata — pip install osfdata, charger un fichier, canaux sous forme de tableau NumPy.
  • Intégration native / hautes performances (serveur, embarqué) : l'implémentation Rust ou C++.
  • Outils Windows / comportement de référence : l'implémentation Delphi avec la ligne de commande osftool.

Toutes les implémentations lisent le même jeu de fichiers d'exemple et suivent les mêmes règles sémantiques de la spécification.

Ce document est publié sous licence CC BY 4.0. Attribution : optiMEAS GmbH et optiMEAS Switzerland GmbH.