2024-08-04 23:02:12 +02:00
#![ allow(non_upper_case_globals) ]
#![ allow(non_camel_case_types) ]
#![ allow(non_snake_case) ]
2024-08-28 21:44:29 +02:00
#![ allow(dead_code) ]
2024-08-04 23:02:12 +02:00
extern " C " {
// Fonctions de gestion des données
pub fn SSV_LireCartePS (
NomRessourcePS : * const ::std ::os ::raw ::c_char ,
NomRessourceLecteur : * const ::std ::os ::raw ::c_char ,
CodePorteurPS : * const ::std ::os ::raw ::c_char ,
pZDataOut : * mut * mut ::std ::os ::raw ::c_void ,
pTailleZone : * mut usize ,
) -> ::std ::os ::raw ::c_ushort ;
pub fn SSV_LireDroitsVitale (
NomRessourcePS : * const ::std ::os ::raw ::c_char ,
NomRessourceLecteur : * const ::std ::os ::raw ::c_char ,
CodePorteurPS : * const ::std ::os ::raw ::c_char ,
DateConsultation : * const ::std ::os ::raw ::c_char ,
pZDataOut : * mut * mut ::std ::os ::raw ::c_void ,
pTailleZone : * mut usize ,
) -> ::std ::os ::raw ::c_ushort ;
pub fn SSV_FormaterFactures (
cFactureACreer : ::std ::os ::raw ::c_char ,
cModeSecur : ::std ::os ::raw ::c_char ,
cTypeFlux : ::std ::os ::raw ::c_char ,
pZDataIn : * mut ::std ::os ::raw ::c_void ,
TailleDataIn : usize ,
pZDataOut : * mut * mut ::std ::os ::raw ::c_void ,
pTailleZone : * mut usize ,
) -> ::std ::os ::raw ::c_ushort ;
pub fn SSV_ChiffrerFacture (
pZDataIn : * mut ::std ::os ::raw ::c_void ,
TailleDataIn : usize ,
pZDataOut : * mut * mut ::std ::os ::raw ::c_void ,
pTailleZone : * mut usize ,
) -> ::std ::os ::raw ::c_ushort ;
pub fn SSV_SignerFactureVitale (
pcNomRessourceVitale : * const ::std ::os ::raw ::c_char ,
pZDataIn : * mut ::std ::os ::raw ::c_void ,
szTailleDataIn : usize ,
pZDataOut : * mut * mut ::std ::os ::raw ::c_void ,
pszTailleZone : * mut usize ,
) -> ::std ::os ::raw ::c_ushort ;
pub fn SSV_CalculerHashFactureAssure (
pcNumSerie : * const ::std ::os ::raw ::c_char ,
pZDataIn : * mut ::std ::os ::raw ::c_void ,
szTailleDataIn : usize ,
pZDataOut : * mut * mut ::std ::os ::raw ::c_void ,
pszTailleZone : * mut usize ,
) -> ::std ::os ::raw ::c_ushort ;
pub fn SSV_AjouterSignatureAssureDansFacture (
pZDataIn : * mut ::std ::os ::raw ::c_void ,
szTailleDataIn : usize ,
pZDataOut : * mut * mut ::std ::os ::raw ::c_void ,
pszTailleZone : * mut usize ,
) -> ::std ::os ::raw ::c_ushort ;
pub fn SSV_SignerFactureCPS (
pcNomRessourcePS : * const ::std ::os ::raw ::c_char ,
pcNomRessourceLecteur : * const ::std ::os ::raw ::c_char ,
pcCodePorteurPS : * const ::std ::os ::raw ::c_char ,
cNologSituation : ::std ::os ::raw ::c_char ,
pZDataIn : * mut ::std ::os ::raw ::c_void ,
szTailleDataIn : usize ,
pZDataOut : * mut * mut ::std ::os ::raw ::c_void ,
pszTailleZone : * mut usize ,
) -> ::std ::os ::raw ::c_ushort ;
pub fn SSV_FormaterLot (
NBZDataIn : ::std ::os ::raw ::c_short ,
TZDataIn : * mut * mut ::std ::os ::raw ::c_void ,
TTailleZoneIn : * mut usize ,
pNbZDataOut : * mut ::std ::os ::raw ::c_short ,
TZDataOut : * mut * mut ::std ::os ::raw ::c_void ,
TTailleZoneOut : * mut usize ,
) -> ::std ::os ::raw ::c_ushort ;
pub fn SSV_SignerLotCPS (
pcNomRessourcePS : * const ::std ::os ::raw ::c_char ,
pcNomRessourceLecteur : * const ::std ::os ::raw ::c_char ,
pcCodePorteurPS : * const ::std ::os ::raw ::c_char ,
cNologSituation : ::std ::os ::raw ::c_char ,
pZDataIn : * mut ::std ::os ::raw ::c_void ,
szTailleDataIn : usize ,
pZDataOut : * mut * mut ::std ::os ::raw ::c_void ,
pszTailleZone : * mut usize ,
) -> ::std ::os ::raw ::c_ushort ;
pub fn SSV_FormaterFichier (
pZDataIn : * mut ::std ::os ::raw ::c_void ,
TailleDataIn : usize ,
pZDataOut : * mut * mut ::std ::os ::raw ::c_void ,
pTailleZone : * mut usize ,
) -> ::std ::os ::raw ::c_ushort ;
pub fn SSV_TraduireARL (
NbZDonneesEntree : ::std ::os ::raw ::c_short ,
TZDataIn : * mut * mut ::std ::os ::raw ::c_void ,
TTailleZoneIn : * mut usize ,
pZDataOut : * mut * mut ::std ::os ::raw ::c_void ,
pTailleZoneOut : * mut usize ,
) -> ::std ::os ::raw ::c_ushort ;
pub fn SSV_LireNumSerieCarteVitale (
pcNomRessource : * mut ::std ::os ::raw ::c_char ,
numeroSerie : * mut ::std ::os ::raw ::c_uchar ,
) -> ::std ::os ::raw ::c_ushort ;
pub fn SSV_CalculerHashFacturePS (
pcNumSerieCPS : * const ::std ::os ::raw ::c_char ,
pZDataIn : * mut ::std ::os ::raw ::c_void ,
usTailleDataIn : usize ,
pZDataOut : * mut * mut ::std ::os ::raw ::c_void ,
pusTailleZone : * mut usize ,
) -> ::std ::os ::raw ::c_ushort ;
pub fn SSV_AjouterSignaturePSFacture (
pZDataIn : * mut ::std ::os ::raw ::c_void ,
szTailleDataIn : usize ,
pZDataOut : * mut * mut ::std ::os ::raw ::c_void ,
pszTailleZone : * mut usize ,
) -> ::std ::os ::raw ::c_ushort ;
pub fn SSV_DechargerFacturesPdT (
NomRessourcePS : * const ::std ::os ::raw ::c_char ,
NomRessourceLecteur : * const ::std ::os ::raw ::c_char ,
CodePorteurPS : * const ::std ::os ::raw ::c_char ,
pcNumFact : * const ::std ::os ::raw ::c_char ,
sNbZDataIn : ::std ::os ::raw ::c_short ,
pvTZDataIn : * mut * mut ::std ::os ::raw ::c_void ,
psTTailleDataIn : * mut usize ,
pNbZDataOut : * mut ::std ::os ::raw ::c_short ,
TZDataOut : * mut * mut ::std ::os ::raw ::c_void ,
TTailleZoneOut : * mut usize ,
) -> ::std ::os ::raw ::c_ushort ;
pub fn SSV_TraduireFSE (
pZDataIn : * mut ::std ::os ::raw ::c_void ,
TailleDataIn : usize ,
pZDataOut : * mut * mut ::std ::os ::raw ::c_void ,
pTailleZone : * mut usize ,
) -> ::std ::os ::raw ::c_ushort ;
// Fonctions TLA
// TLA (Terminal Lecteur Applicatif) -> lecteur autre que PC-SC, on ne prend pas en compte cela
pub fn SSV_IdentifierTLA (
pcNomRessourceLecteur : * const ::std ::os ::raw ::c_char ,
NumVersionCDC : * const ::std ::os ::raw ::c_char ,
pZDataOut : * mut * mut ::std ::os ::raw ::c_void ,
tailleDataOut : * mut usize ,
) -> ::std ::os ::raw ::c_ushort ;
pub fn SSV_ChargerDonneesTLA (
pcNomRessourceLecteur : * const ::std ::os ::raw ::c_char ,
sNbZDataIn : ::std ::os ::raw ::c_short ,
pvTZDataIn : * mut * mut ::std ::os ::raw ::c_void ,
psTTailleDataIn : * mut usize ,
) -> ::std ::os ::raw ::c_ushort ;
pub fn SSV_ChargerFacturesPdT (
pcNomRessourceLecteur : * const ::std ::os ::raw ::c_char ,
pcNumFacturation : * const ::std ::os ::raw ::c_char ,
sNbZDataIn : ::std ::os ::raw ::c_short ,
pvTZDataIn : * mut * mut ::std ::os ::raw ::c_void ,
psTTailleDataIn : * mut usize ,
pNbZDataOut : * mut ::std ::os ::raw ::c_short ,
TZDataOut : * mut * mut ::std ::os ::raw ::c_void ,
TTailleZoneOut : * mut usize ,
) -> ::std ::os ::raw ::c_ushort ;
pub fn SSV_DechargerFSETLA (
NomRessourcePS : * const ::std ::os ::raw ::c_char ,
NomRessourceLecteur : * const ::std ::os ::raw ::c_char ,
CodePorteurPS : * const ::std ::os ::raw ::c_char ,
pcNumFact : * const ::std ::os ::raw ::c_char ,
pNbZDataOut : * mut ::std ::os ::raw ::c_short ,
TZDataOut : * mut * mut ::std ::os ::raw ::c_void ,
TTailleZoneOut : * mut usize ,
) -> ::std ::os ::raw ::c_ushort ;
pub fn SSV_DechargerFSETLANC (
NomRessourcePS : * const ::std ::os ::raw ::c_char ,
NomRessourceLecteur : * const ::std ::os ::raw ::c_char ,
CodePorteurPS : * const ::std ::os ::raw ::c_char ,
pcNumFact : * const ::std ::os ::raw ::c_char ,
pNbZDataOut : * mut ::std ::os ::raw ::c_short ,
TZDataOut : * mut * mut ::std ::os ::raw ::c_void ,
TTailleZoneOut : * mut usize ,
) -> ::std ::os ::raw ::c_ushort ;
pub fn SSV_DechargerBeneficiaires (
NomRessourcePS : * const ::std ::os ::raw ::c_char ,
NomRessourceLecteur : * const ::std ::os ::raw ::c_char ,
CodePorteurPS : * const ::std ::os ::raw ::c_char ,
cNumFacturation : * const ::std ::os ::raw ::c_char ,
sNbZDataOut : * mut ::std ::os ::raw ::c_short ,
pTZDataOut : * mut * mut ::std ::os ::raw ::c_void ,
sTTailleDataOut : * mut usize ,
) -> ::std ::os ::raw ::c_ushort ;
pub fn SSV_EffacerTLA (
NomRessourcePS : * const ::std ::os ::raw ::c_char ,
NomRessourceLecteur : * const ::std ::os ::raw ::c_char ,
CodePorteurPS : * const ::std ::os ::raw ::c_char ,
cNumFacturation : * const ::std ::os ::raw ::c_char ,
cTypeDonnee : * const ::std ::os ::raw ::c_char ,
) -> ::std ::os ::raw ::c_ushort ;
pub fn SSV_SecuriserFacture (
pcNomRessourcePS : * const ::std ::os ::raw ::c_char ,
pcNomRessourceLecteur : * const ::std ::os ::raw ::c_char ,
pcCodePorteurPS : * const ::std ::os ::raw ::c_char ,
cNologSituation : ::std ::os ::raw ::c_char ,
pcNumFact : * const ::std ::os ::raw ::c_char ,
pvDataIn : * mut ::std ::os ::raw ::c_void ,
szTailleDataIn : usize ,
pvDataOut : * mut * mut ::std ::os ::raw ::c_void ,
pszTailleDataOut : * mut usize ,
) -> ::std ::os ::raw ::c_ushort ;
// Fonctions de gestion de configuration (GALSS)
pub fn SSV_LireConfig (
pZDataOut : * mut * mut ::std ::os ::raw ::c_void ,
psTailleDataOut : * mut usize ,
) -> ::std ::os ::raw ::c_ushort ;
pub fn SSV_LireDateLecteur (
pcNomRessourceLecteur : * const ::std ::os ::raw ::c_char ,
pcDateHeure : * mut ::std ::os ::raw ::c_char ,
) -> ::std ::os ::raw ::c_ushort ;
pub fn SSV_MajDateLecteur (
pcNomRessourceLecteur : * const ::std ::os ::raw ::c_char ,
pcDateHeure : * const ::std ::os ::raw ::c_char ,
) -> ::std ::os ::raw ::c_ushort ;
pub fn SSV_ChargerAppli (
pcNomRessourceLecteur : * const ::std ::os ::raw ::c_char ,
sNbZDataIn : ::std ::os ::raw ::c_short ,
pvTZDataIn : * mut * mut ::std ::os ::raw ::c_void ,
psTTailleDataIn : * mut usize ,
) -> ::std ::os ::raw ::c_ushort ;
// Fonctions techniques
// La fonction Initialiser Librairie a pour objet de charger et d’ initialiser dans la mémoire du système :
// - dans le cas où le GALSS est installé sur le poste :
// - la bibliothèque du Gestionnaire d’ Accès au Lecteur Santé Social (GALSS),
// - qui charge la bibliothèque du Protocole Santé Social (PSS),
// - la configuration du poste de travail à l’ aide du fichier galssinf,
// - les variables globales communes aux différents Services SESAM-Vitale,
// - les fichiers de tables et scripts des répertoires par défaut.
// Cette fonction accède au référentiel électronique en utilisant le chemin complet indiqué dans le fichier sesam.ini.
pub fn SSV_InitLIB2 ( pcFichierSesam : * const ::std ::os ::raw ::c_char ) -> ::std ::os ::raw ::c_ushort ;
// La fonction Terminer a pour objet de décharger de la mémoire du système les éléments
// chargés par la fonction Initialiser Librairie, qui ne sont plus utiles.
pub fn SSV_TermLIB ( ) -> ::std ::os ::raw ::c_ushort ;
/// Fonctions de Tracage
//La fonction Allouer Zone Mémoire a un rôle purement technique : elle permet d’ allouer, autrement dit de réserver une zone ou partie de la mémoire du poste de travail pour y écrire les données à passer en entrée d’ un Service SESAM-Vitale.
// Cette fonction doit être utilisée pour allouer toutes les zones de mémoire requises en entrée des Services SESAM-Vitale de manière à permettre un diagnostic fiable par le « mode trace » en cas de dysfonctionnement. En effet, son mode d’ exécution est susceptible de fournir des informations utiles au « mode trace » lorsqu’ il est activé.
pub fn SSV_AllouerZoneMem (
pZDataIn : * mut * mut ::std ::os ::raw ::c_void ,
taille : usize ,
) -> ::std ::os ::raw ::c_ushort ;
// La fonction Libérer Zone Mémoire a un rôle purement technique : elle permet de libérer une zone de mémoire du poste de travail précédemment allouée après exploitation des données qu’ elle contient.
// Cette fonction doit être utilisée pour libérer toutes les zones de mémoire :
// - celles qui ont été allouées par le progiciel de santé pour fournir les données nécessaires à l’ entrée des Services SESAM-Vitale, avant leur appel, celles qui ont été allouées par les Services SESAM-Vitale pour fournir en sortie les données utiles au progiciel de santé qui a fait appel à ces services,
// - de façon à permettre un diagnostic fiable par le mode trace en cas de dysfonctionnement
//En effet, son exécution est susceptible de fournir des informations utiles au « mode trace » lorsqu’ il est activé.
pub fn SSV_LibererZoneMem ( pZone : * mut ::std ::os ::raw ::c_void ) ;
// La fonction Initialiser Trace a pour objet de permettre l’ activation du « mode trace ».
// Ce mode de fonctionnement est prévu pour permettre à l’ assistance technique du GIE
// SESAM-Vitale d’ analyser les problèmes de mise en œuvre des Services SESAM-Vitale,
// notamment lorsque une fonction retourne un code d’ erreur de valeur hexadécimale supérieure à FF00.
pub fn SSV_InitTrace (
pathConf : * mut ::std ::os ::raw ::c_char ,
ModeOuvertureFicherLog : * mut ::std ::os ::raw ::c_char ,
ModuleLog : ::std ::os ::raw ::c_ushort ,
NiveauLog : ::std ::os ::raw ::c_uchar ,
) -> ::std ::os ::raw ::c_ushort ;
}