——————–
Nexvision propose un panel de briques logicielles régulièrement mises à jour en fonction de l’avancée de notre R&D à travers son ClassPath.
(Toutes les autres fonctions dépendent de ces modules de base)
1.8.1 Cartes de Hilbert : une zone 2D à une seule coordonnée 1D de longueur variable
1.8.2 BoundingBox/FlatRectangles/Point : primitives de base à N dimensions
1.8.3 Rtree : structure de stockage géographique spécialisée efficace
1.8.4 LongNumber : Nombre de précision illimitée
1.9.1 Config : Un objet de valeur de configuration automatique persistant avec une interface transparente
1.10.1 Abstraction de la base de données : L’implémentation de la base de données est un système très innovant où des objets C++ standard sont utilisés et synchronisés automatiquement dans la base de données.
1.10.2 SQLite : Un pilote de base de données pour SQLite3
1.10.3 MySQL : Un pilote de base de données pour MySQL
1.10.4 Interface basée sur les requêtes : une construction d’instructions basée sur la compilation avec des instructions préparées automatiques pour une utilisation sûre de la base de données.
1.10.5 Contraintes : Une vue basée sur les contraintes de la base de données qui se synchronise automatiquement.
1.11.1 Date/InternationalData : Une interface commune pour l’analyse de la date, la conversion dans différents calendriers et l’émission.
1.11.2 Time/Duration : Une interface commune pour l’analyse du temps, la conversion à partir de différents fuseaux horaires (heure locale, y compris la cohérence de l’heure d’été et de l’heure d’hiver).
1.11.3 Chrono : Un Chrono très précis.
1.11.4 ScopeProfiler : Un profileur basé sur le scope qui permet de profiler le code par fonction / par scope avec et sans accumulation.
1.12.1 Thread : une classe de threads commune à toutes les plates-formes, avec son propre support de variables locales, le vidage de pile, et bien d’autres fonctionnalités.
1.12.2 Lock/Event/RWLock : primitive de synchronisation de base (verrouillage de section de code partagé, mécanisme d’événement, verrous de lecture/écriture).
1.12.3 Classes atomiques : classes atomiques qui utilisent les fonctions du compilateur C++ si elles sont disponibles, sinon elles utilisent par défaut les fonctions intrinsèques du compilateur, et enfin les fonctions du système d’exploitation.
1.12.4 Jobs : Un planificateur basé sur les jobs qui s’exécute dans son propre thread.
1.12.5 AsyncThread : primitive asynchrone » call me later » facile à utiliser
1.12.6 TimerThread : Un thread d’ordonnancement basé sur le temps avec des callbacks
1.13.1 XML Parser : L’un des analyseurs XML les plus rapides du marché
1.13.2 Xpath : Un moteur de traitement Xpath complet
1.13.3 FastExtract : Extraction d’informations à partir de XML par une recherche de base à la compilation dans un arbre XML
Tous les serveurs supportent les interfaces monothread (via polling) et multithread.
1.15.1 HTMLParser : Un parseur très rapide compatible avec HTML4 qui convertit et corrige les mauvais documents HTML en documents XML valides ou en arbres DOM.
1.15.2 DOM : Une interface compatible avec DOM 2.0
1.15.3 XMLSession : Un moteur de traitement XML qui peut simuler la navigation d’un utilisateur sur un site web donné, l’affichage de formulaires et l’extraction de données.
1.16.1 H264/MPEG4/MJPEG : Démultiplicateur pour ces codecs utilisés dans les clients et serveurs de streaming.
1.16.2 AAC/MP3 : Démultiplicateur pour ces codecs utilisés dans les clients et serveurs de streaming.
1.16.3 MPEG4 layer 2 (file parser) : Un analyseur d’archives MPEG4
1.16.4 Bitratestats : Statistiques de débit.
1.17.1 Scanner : Un scanner pour la configuration matérielle (extraction de nombreuses informations, comme l’EDID du moniteur, le numéro de série du disque dur, etc.)
1.17.2 Plate-forme : Une implémentation multiplateforme de fonctionnalités spécifiques à la plateforme (comme le chargement dynamique de bibliothèques, etc…)
1.18.1 Base16/Base64/Base85 : Un encodeur et décodeur hexadécimal, base64 et base85 (non compatible avec le format base85 d’Adobe).
1.19.1 Info : Un extracteur d’informations sur les fichiers très facile à utiliser (comme les permissions, la date et l’heure, le contenu, le nombre de liens, etc.)
1.19.2 Scanner : Un scanner de répertoire très rapide, basé sur des callbacks, avec des capacités de filtrage.
1.19.3 DirectoryIteractor : Un itérateur pour énumérer les fichiers dans un répertoire
1.19.4 Async/Stream/Pool : Une classe de lecture et d’écriture de fichiers asynchrone et en bloc avec des capacités de pool
1.19.5 Metadata extractor : Un extracteur de métadonnées de fichiers qui peut être combiné avec FFMPEG pour obtenir des informations supplémentaires sur les fichiers.
1.20.1 Zip : Une classe de création et de décompression d’archives capable de gérer le format zip.
1.20.2 PDF : Un format de lecture d’objets PDF
1.20.3 EPUB : Une classe de lecture de fichiers EPUB
1.21.1 JPEG : Un décodeur JPEG de taille optimisée
1.21.2 PNG : Un décodeur et un encodeur PNG de taille optimisée
1.22.3 PPM/PBM/PGM : Un décodeur et encodeur Netpbm
1.22.4 Image : Une classe de traitement d’image très simple et rapide
1.22.5 Couleur : Une classe de traitement des couleurs capable de traiter plusieurs espaces colorimétriques
1.22.1 Console : Une implémentation de l’interface logger pour l’enregistrement en mode console.
1.22.2 File : journalisation basée sur les fichiers
1.22.3 Structure file : enregistrement basé sur un fichier avec une structure permettant de le rechercher facilement.
1.22.4 Debug : Un logging basé sur une console de débogage
1.23.1 Constant : Un système d’unités basé sur un modèle pour les équations mathématiques et physiques vérifiées en temps réel.
1.23.2 Unités : Un système d’unités basé sur un modèle pour les équations mathématiques et physiques vérifiées en temps réel.
1.23.3 Valeur : Un système d’unités basé sur un modèle pour les équations mathématiques et physiques vérifiées en temps réel.
1.23.4 Expression : Un analyseur d’expressions mathématiques avec des fonctions définissables par la portée.
1.23.5 Variant : Une classe de variante à sécurité de type réelle avec un stockage élégant du tas/de la pile basé sur le type stocké.
1.23.6 JSON : Un analyseur et un rédacteur compatibles avec JSON
1.23.7 DynObj : Une classe d’objet dynamique avec une interface élégante qui permet de modifier le code en cours d’exécution.
1.23.8 UUID : Une classe d’analyse syntaxique compatible avec UUID
1.23.9 UniversalTypeIdentifier : Un registre pour les types afin de permettre une conversion dynamique des types basée sur une implémentation pseudo XML
1.24.1 Licences / Gestion des droits numériques : Algorithme de mise en œuvre du DRM
1.25.1 MemoryBlock : Une classe de bloc mémoire qui gère l’encodage, la croissance, la réduction, etc.
1.25.2 ScopePtr : Une classe de pointeur basée sur le champ d’application.
1.25.3 OwnPtr : Une classe de pointeur modifiable par le propriétaire
1.25.4 RefPtr : Une classe de pointeur de compteur de référence (obsolète)
1.25.5 Dump : Un dumper hexadécimal pour le débogage
1.26.1 breakUnderDebugger : Une simple fonction d’interruption sous débogueur si le code est exécuté sous un débogueur.
1.26.2 Callstack dump : Une fonction de vidage de la pile d’appels
1.26.3 TypeOf : Retourne une représentation textuelle d’un type, disponible même lorsque le code est compilé sans RTTI
1.26.4 Assert / CompileTimeAssert : Vérification d’assertions basée sur le runtime et le compiletime
1.27.1 Calendriers : De nombreux calendriers différents sont pris en charge pour la conversion de la date et de l’heure.
1.27.2 Traduire : Une macro et une fonction de traduction très optimisées pour la conversion de chaînes de caractères basées sur des ressources de fichiers externes.
1.28.1 UnitTest : Un mécanisme de test très simple pour toutes les fonctionnalités décrites ci-dessus.
1.28.2 False : Une capture de fichier et de ligne basée sur la compilation pour l’échec des tests.
1.28.3 MakeUnitTest : Une macro pratique pour générer automatiquement des vecteurs de test basés sur les drapeaux de compilation
Vous pouvez également consulter notre Architecture modulaire HW et notre Librairie IP Core FPGA.