354 lines
13 KiB
C
354 lines
13 KiB
C
|
/*
|
|||
|
%-----------------------------------------------------------------------------
|
|||
|
% PROJET : STS INTERFACE
|
|||
|
%
|
|||
|
% MODULE : HEADER STS INTERFACE
|
|||
|
%
|
|||
|
% VERSION : cf #define ci-apr<EFBFBD>s
|
|||
|
%
|
|||
|
% FICHIER : sts.h
|
|||
|
%
|
|||
|
% D<EFBFBD>claration des prototypes des fonctions STS - INTERFACE
|
|||
|
%-----------------------------------------------------------------------------
|
|||
|
%
|
|||
|
% EDS DHU - 09/04/03 - Cr<EFBFBD>ation du .h
|
|||
|
%
|
|||
|
% EDS OCL - 06/06/03 - Defect 91 : Rectification du prototype de InitTrace()
|
|||
|
%
|
|||
|
% EDS OCL - 04/07/03 - Defect 115 : Nettoyage de stsitf.h (devenu sts.h)
|
|||
|
%
|
|||
|
%-----------------------------------------------------------------------------
|
|||
|
*/
|
|||
|
|
|||
|
#ifndef __STSITF_H
|
|||
|
#define __STSITF_H
|
|||
|
#define __STSITF_VERSION "0103"
|
|||
|
/* Ne pas oublier d'impacter idef.h aussi */
|
|||
|
|
|||
|
#ifdef __cplusplus
|
|||
|
extern "C" {
|
|||
|
#endif
|
|||
|
|
|||
|
/*
|
|||
|
% Biblioth<EFBFBD>ques ANSI ou syst<EFBFBD>me
|
|||
|
%------------------------------
|
|||
|
*/
|
|||
|
|
|||
|
|
|||
|
/*
|
|||
|
% Fichiers h inclus
|
|||
|
%------------------
|
|||
|
*/
|
|||
|
|
|||
|
#include "sys_dep.h"
|
|||
|
/*
|
|||
|
% Macros et Constantes
|
|||
|
%---------------------
|
|||
|
*/
|
|||
|
|
|||
|
/* OCL - Defect 115 : Suppression du #define G_xxx ici m<>me */
|
|||
|
|
|||
|
/* OCL - Defect 115 : Suppression du second #ifdef _cplusplus ici m<>me */
|
|||
|
|
|||
|
|
|||
|
/*********************************************************************************
|
|||
|
************************* Fonctions r<EFBFBD>entrantes *********************************
|
|||
|
*********************************************************************************/
|
|||
|
|
|||
|
/*
|
|||
|
%-----------------------------------------------------------------------------
|
|||
|
% STS_Tarification
|
|||
|
%
|
|||
|
% R<EFBFBD>le : Tarification de la part compl<EFBFBD>mentaire des actes de la facture
|
|||
|
%
|
|||
|
% Param<EFBFBD>tres d'entr<EFBFBD>e :
|
|||
|
% MotifAppel (char) : 1er appel ('P') ou Appel sur echec de
|
|||
|
% tarification ('E').
|
|||
|
% ZDonneesEntree (void*) : Zone d'<EFBFBD>change fournie par le Progiciel
|
|||
|
% contenant toutes les informations sur la facture
|
|||
|
% TailleDonneesEntree (size_t) : Taille de la zone d'<EFBFBD>change Zin
|
|||
|
%
|
|||
|
% Param<EFBFBD>tres de sortie :
|
|||
|
% ZDonneesSortie (void**) : Zone d'<EFBFBD>change fournie par le module STS appel<EFBFBD>
|
|||
|
% contenant toutes les informations modifi<EFBFBD>es de la facture
|
|||
|
% en entr<EFBFBD>e et de nouvelles informations.
|
|||
|
% TailleDonneesSortie (size_t*) : Taille de la zone d'<EFBFBD>change Zout
|
|||
|
%
|
|||
|
% Valeur retourn<EFBFBD>e :
|
|||
|
% OK si pas d'erreur
|
|||
|
% ERR_STS_NON_INITIALISE si module STS non initialis<EFBFBD>
|
|||
|
% et les codes d'erreurs de la tarification du module STS appel<EFBFBD>
|
|||
|
%
|
|||
|
%-----------------------------------------------------------------------------
|
|||
|
*/
|
|||
|
/* OCL - Defect 115 : Remplacement PTR par FARPTR */
|
|||
|
typedef unsigned short (API_ENTRY FARPTR STS_Tarification)(char MotifAppel, void FARPTR ZDonneesEntree,
|
|||
|
size_t TailleDonneesEntree, void FARPTR FARPTR ZDonneesSortie,
|
|||
|
size_t FARPTR TailleDonneesSortie);
|
|||
|
|
|||
|
/* Fonction simplifi<66>e */
|
|||
|
/* OCL - Defect 115 : Remplacement STS_SIM par SGD */
|
|||
|
#ifdef SGD
|
|||
|
typedef unsigned short (API_ENTRY FARPTR STS_Tarification_S)(char MotifAppel, unsigned short NumeroSession);
|
|||
|
#endif
|
|||
|
|
|||
|
/*
|
|||
|
%-----------------------------------------------------------------------------
|
|||
|
% STS_Assistance
|
|||
|
%
|
|||
|
% R<EFBFBD>le : Assistance <EFBFBD> la facturation.
|
|||
|
%
|
|||
|
% Param<EFBFBD>tres d'entr<EFBFBD>e :
|
|||
|
% MotifAppel (char) : 1er appel ('P') ou Appel sur echec de
|
|||
|
% tarification ('E').
|
|||
|
% PorteeAppel (ushort) : 0 pour une assistance sur toute la facture.
|
|||
|
% 1..n pour une assistance sur un acte de rang donn<EFBFBD> /zone
|
|||
|
% ZDonneesEntree (void*) : Zone d'<EFBFBD>change fournie par le Progiciel
|
|||
|
% contenant toutes les informations sur la facture
|
|||
|
% TailleDonneesEntree (size_t) : Taille de la zone d'<EFBFBD>change Zin
|
|||
|
%
|
|||
|
% Param<EFBFBD>tres de sortie :
|
|||
|
% ZDonneesSortie (void**) : Zone d'<EFBFBD>change fournie par le module STS appel<EFBFBD>
|
|||
|
% TailleDonneesSortie (size_t*) : Taille de la zone d'<EFBFBD>change Zout
|
|||
|
%
|
|||
|
% Valeur retourn<EFBFBD>e : (idem Tarification)
|
|||
|
% OK si pas d'erreur
|
|||
|
% ERR_STS_NON_INITIALISE si module STS non initialis<EFBFBD>
|
|||
|
% et les codes d'erreurs de la tarification du module STS appel<EFBFBD>
|
|||
|
%
|
|||
|
%-----------------------------------------------------------------------------
|
|||
|
*/
|
|||
|
/* OCL - Defect 115 : Remplacement PTR par FARPTR */
|
|||
|
typedef unsigned short (API_ENTRY FARPTR STS_Assistance)(char MotifAppel, unsigned short PorteeAppel,
|
|||
|
void FARPTR ZDonneesEntree, size_t TailleDonneesEntree,
|
|||
|
void FARPTR FARPTR ZDonneesSortie, size_t FARPTR TailleDonneesSortie);
|
|||
|
|
|||
|
/* Fonction simplifi<66>e */
|
|||
|
#ifdef SGD
|
|||
|
typedef unsigned short (API_ENTRY FARPTR STS_Assistance_S)(char MotifAppel, unsigned short PorteeAppel,
|
|||
|
unsigned short NumeroSession);
|
|||
|
#endif
|
|||
|
|
|||
|
/*
|
|||
|
%-----------------------------------------------------------------------------
|
|||
|
% STS_LireVersion
|
|||
|
%
|
|||
|
% R<EFBFBD>le : Lecture de la version de ce module et du fichier de ces tables externes
|
|||
|
% dans le groupe 3780. Appeller la lecture de version de chaque module STS
|
|||
|
% puis recopier la r<EFBFBD>ponse 3780 de chacun dans la zone de sortie.
|
|||
|
%
|
|||
|
% Param<EFBFBD>tres d'entr<EFBFBD>e : aucun
|
|||
|
%
|
|||
|
% Param<EFBFBD>tres de sortie :
|
|||
|
% ZDonneesSortie (void**) : Zone d'<EFBFBD>change fournie par ce module
|
|||
|
% contenant les versions (grp 3780) demand<EFBFBD>es.
|
|||
|
% TailleDonneesSortie (size_t*) : Taille de la zone d'<EFBFBD>change Zout
|
|||
|
%
|
|||
|
% Valeur retourn<EFBFBD>e :
|
|||
|
% OK si pas d'erreur
|
|||
|
% ERR_STS_NON_INITIALISE si module STS non initialis<EFBFBD>
|
|||
|
% ERR_ZOUT si ZDonneesSortie==NULL ou TailleDonneesSortie==NULL
|
|||
|
% ERR_ZONE_ALLOC si m<EFBFBD>moire insuffisante pour allouer la Zout
|
|||
|
%
|
|||
|
%-----------------------------------------------------------------------------
|
|||
|
*/
|
|||
|
/* OCL - Defect 115 : Remplacement PTR par FARPTR */
|
|||
|
typedef unsigned short (API_ENTRY FARPTR STS_LireVersion)(void FARPTR FARPTR ZDonneesSortie, size_t FARPTR TailleDonneesSortie);
|
|||
|
|
|||
|
/* Fonction simplifi<66>e */
|
|||
|
#ifdef SGD
|
|||
|
typedef unsigned short (API_ENTRY FARPTR STS_LireVersion_S)(unsigned short NumeroSession);
|
|||
|
#endif
|
|||
|
|
|||
|
/*
|
|||
|
%-----------------------------------------------------------------------------
|
|||
|
% STS_InitTrace
|
|||
|
%
|
|||
|
% R<EFBFBD>le : Initialisation des traces du module STS-Interface dans un fichier log.
|
|||
|
% Cette fonction permet d'activer ou d<EFBFBD>sactiver (niveau 0) les
|
|||
|
% traces. Une activation requiert un nom de fichier et un mode
|
|||
|
% d'ouverture. Un changement de niveau peut se faire sur le m<EFBFBD>me
|
|||
|
% fichier ou sur un diff<EFBFBD>rent s'il est pr<EFBFBD>cis<EFBFBD> en entr<EFBFBD>e
|
|||
|
%
|
|||
|
% Param<EFBFBD>tres d'entr<EFBFBD>e :
|
|||
|
% NomFichier (char*) : Chemin et nom de fichier de trace
|
|||
|
% ModeOuverture (char*) : Mode d'ouverture du fichier de trace
|
|||
|
% "a", "w" (,"ab", "wb").
|
|||
|
% Module (ushort) : n<EFBFBD> de module 0 <EFBFBD> 5 (6=TOUS)
|
|||
|
% Niveau (uchar) : Niveau de trace : 0 signifie pas de trace, 1
|
|||
|
% signifie traces de profondeur 8 et >=2 signifie traces sans limite
|
|||
|
% de profondeur et activation traces module STS_SI
|
|||
|
%
|
|||
|
% Param<EFBFBD>tres de sortie : aucun
|
|||
|
%
|
|||
|
% Valeur retourn<EFBFBD>e :
|
|||
|
% OK si pas d'erreur
|
|||
|
% ERR_PARAM si NomFichier/ModeOuverture incorrect quand Niveau > 0
|
|||
|
% ERR_TRACE_FILE si erreur d'ouverture du fichier de trace
|
|||
|
%
|
|||
|
%-----------------------------------------------------------------------------
|
|||
|
*/
|
|||
|
/* OCL - Defect 91 : Rectification du prototype de InitTrace() */
|
|||
|
/* OCL - Defect 115 : Remplacement PTR par FARPTR */
|
|||
|
typedef unsigned short (API_ENTRY FARPTR STS_InitTrace)(const char FARPTR pathConf, const char FARPTR ModeOuverture,
|
|||
|
unsigned short Module, unsigned char Niveau);
|
|||
|
|
|||
|
/*********************************************************************************
|
|||
|
************************* Fonctions d'initialisation et de terminaison *********
|
|||
|
*********************************************************************************/
|
|||
|
|
|||
|
/*
|
|||
|
%-----------------------------------------------------------------------------
|
|||
|
% STS_InitLIB
|
|||
|
%
|
|||
|
% R<EFBFBD>le : Initialisation du module STS-Interface : Chargement des tables externes
|
|||
|
% et suivi de parc. Appel de l'nitialisation de chaque module STS
|
|||
|
%
|
|||
|
% Param<EFBFBD>tres d'entr<EFBFBD>e : aucun
|
|||
|
%
|
|||
|
% Param<EFBFBD>tres de sortie : aucun
|
|||
|
%
|
|||
|
% Valeur retourn<EFBFBD>e :
|
|||
|
% OK si pas d'erreur
|
|||
|
% ERR_INTERNE_ITF si erreur interne du module STS-Interface (ou STS SI)
|
|||
|
% ERR_MEM_DISPO si plus de m<EFBFBD>moire disponible
|
|||
|
% ERR_PKG_PATH_INI si le chemin d'acc<EFBFBD>s au fichier binaire est
|
|||
|
% inconnu (fichier de configuration inaccessible ou information
|
|||
|
% manquante)
|
|||
|
% ERR_ITF_PKG_ACCES si fichier binaire de table inaccessible
|
|||
|
% ERR_ITF_PKG_VER si version du fichier incoh<EFBFBD>rent avec version du
|
|||
|
% module STS-Interface (dans les deux sens)
|
|||
|
% ERR_ITF_PKG_CRC si CRC du fichier binaire est incorrect
|
|||
|
% ERR_ITF_PKG_FORME si format du fichier incorrect
|
|||
|
% ERR_ITF_PKG_INCPT s'il manque une table dans le fichier binaire
|
|||
|
% ERR_ITF_PKG_NOM si le nom du fichier est diff<EFBFBD>rent du nom dans
|
|||
|
% l'en-t<EFBFBD>te du fichier.
|
|||
|
% les codes suivants ne sont pas des erreurs fatales (non bloquant)
|
|||
|
% mais juste des avertissements
|
|||
|
% WAR_STS_DEJA_INITIALISE si module d<EFBFBD>j<EFBFBD> initialis<EFBFBD>
|
|||
|
% WAR_ADM_PATH si chemin au suivi de parc non trouv<EFBFBD> dans fichier
|
|||
|
% de configuration des produits SV
|
|||
|
% WAR_ADM_FILE si impossible de cr<EFBFBD>er les fichiers de suivi de
|
|||
|
% parc
|
|||
|
% ET les codes de retour de chaque module STS appel<EFBFBD>
|
|||
|
%
|
|||
|
%-----------------------------------------------------------------------------
|
|||
|
*/
|
|||
|
/* extern unsigned short API_ENTRY STS_InitLIB(); */
|
|||
|
/*
|
|||
|
%-----------------------------------------------------------------------------
|
|||
|
% STS_InitLIB2
|
|||
|
%
|
|||
|
% R<EFBFBD>le : Initialisation du module STS-Interface : Chargement des tables externes
|
|||
|
% et suivi de parc. Appel de l'nitialisation de chaque module STS
|
|||
|
%
|
|||
|
% Param<EFBFBD>tres d'entr<EFBFBD>e :
|
|||
|
% NomFichierIni (char*) : Chemin et nom du fichier de configuration des
|
|||
|
% produits SESAM Vitale du poste de travail (sesam.ini)
|
|||
|
%
|
|||
|
% Param<EFBFBD>tres de sortie : aucun
|
|||
|
%
|
|||
|
% Valeur retourn<EFBFBD>e :
|
|||
|
% OK si pas d'erreur
|
|||
|
% ERR_INTERNE_ITF si erreur interne du module STS-Interface (ou STS SI)
|
|||
|
% ERR_MEM_DISPO si plus de m<EFBFBD>moire disponible
|
|||
|
% ERR_PKG_PATH_INI si le chemin d'acc<EFBFBD>s au fichier binaire est
|
|||
|
% inconnu (fichier de configuration inaccessible ou information
|
|||
|
% manquante)
|
|||
|
% ERR_ITF_PKG_ACCES si fichier binaire de table inaccessible
|
|||
|
% ERR_ITF_PKG_VER si version du fichier incoh<EFBFBD>rent avec version du
|
|||
|
% module STS-Interface (dans les deux sens)
|
|||
|
% ERR_ITF_PKG_CRC si CRC du fichier binaire est incorrect
|
|||
|
% ERR_ITF_PKG_FORME si format du fichier incorrect
|
|||
|
% ERR_ITF_PKG_INCPT s'il manque une table dans le fichier binaire
|
|||
|
% ERR_ITF_PKG_NOM si le nom du fichier est diff<EFBFBD>rent du nom dans
|
|||
|
% l'en-t<EFBFBD>te du fichier.
|
|||
|
% les codes suivants ne sont pas des erreurs fatales (non bloquant)
|
|||
|
% mais juste des avertissements
|
|||
|
% WAR_STS_DEJA_INITIALISE si module d<EFBFBD>j<EFBFBD> initialis<EFBFBD>
|
|||
|
% WAR_ADM_PATH si chemin au suivi de parc non trouv<EFBFBD> dans fichier
|
|||
|
% de configuration des produits SV
|
|||
|
% WAR_ADM_FILE si impossible de cr<EFBFBD>er les fichiers de suivi de
|
|||
|
% parc
|
|||
|
% ET les codes de retour de chaque module STS appel<EFBFBD>
|
|||
|
%
|
|||
|
%-----------------------------------------------------------------------------
|
|||
|
*/
|
|||
|
typedef unsigned short (API_ENTRY FARPTR STS_InitLIB2)(const char FARPTR nomFichierIni);
|
|||
|
|
|||
|
/*
|
|||
|
%-----------------------------------------------------------------------------
|
|||
|
% STS_TermLIB
|
|||
|
%
|
|||
|
% R<EFBFBD>le : Terminaison du module STS-Interface : D<EFBFBD>chargement des tables externes.
|
|||
|
%
|
|||
|
% Param<EFBFBD>tres d'entr<EFBFBD>e : aucun
|
|||
|
%
|
|||
|
% Param<EFBFBD>tres de sortie : aucun
|
|||
|
%
|
|||
|
% Valeur retourn<EFBFBD>e :
|
|||
|
% OK si pas d'erreur
|
|||
|
% ERR_INTERNE_ITF si erreur interne du module STS-Interface (ou STS SI)
|
|||
|
%
|
|||
|
%-----------------------------------------------------------------------------
|
|||
|
*/
|
|||
|
typedef unsigned short (API_ENTRY FARPTR STS_TermLIB)(void);
|
|||
|
|
|||
|
/*********************************************************************************
|
|||
|
************************* Fonctions de gestion de la m<EFBFBD>moire *******************
|
|||
|
*********************************************************************************/
|
|||
|
|
|||
|
/*
|
|||
|
%-----------------------------------------------------------------------------
|
|||
|
% STS_AllouerZoneMem
|
|||
|
%
|
|||
|
% R<EFBFBD>le : Allocation d'une zone d'<EFBFBD>change de sortie par STS Interface.
|
|||
|
% Cette fonction permet la r<EFBFBD>allocation d'une zone d'<EFBFBD>change.
|
|||
|
% L'allocation d'une nouvelle zone d'<EFBFBD>change n<EFBFBD>cessite un pointeur
|
|||
|
% NULL en entr<EFBFBD>e !
|
|||
|
% Cette fonctio est <EFBFBD> utiliser conjointement avec STS_LibererZoneMem
|
|||
|
% pour faciliter le Debugage (zone allou<EFBFBD>e par l'<EFBFBD>crivain)
|
|||
|
%
|
|||
|
% Param<EFBFBD>tres d'entr<EFBFBD>e :
|
|||
|
% Taille (size_t) : Taille de la zone d'<EFBFBD>change <EFBFBD> allouer.
|
|||
|
%
|
|||
|
% Param<EFBFBD>tres d'entr<EFBFBD>e et de sortie :
|
|||
|
% Zone (void**) : Zone d'<EFBFBD>change pr<EFBFBD>allou<EFBFBD>e en entr<EFBFBD>e (ou NULL).
|
|||
|
% Zone allou<EFBFBD>e (r<EFBFBD>allou<EFBFBD>e) par le module STS-Interface.
|
|||
|
%
|
|||
|
% Valeur retourn<EFBFBD>e :
|
|||
|
% OK si pas d'erreur
|
|||
|
% ERR_ZOUT si Zone==NULL ou Taille==0
|
|||
|
% ERR_ZONE_ALLOC si plus de m<EFBFBD>moire disponible
|
|||
|
%
|
|||
|
%-----------------------------------------------------------------------------
|
|||
|
*/
|
|||
|
/* OCL - Defect 115 : Remplacement PTR par FARPTR */
|
|||
|
typedef unsigned short (API_ENTRY FARPTR STS_AllouerZoneMem)(void FARPTR FARPTR Zone, size_t Taille);
|
|||
|
|
|||
|
|
|||
|
/*
|
|||
|
%-----------------------------------------------------------------------------
|
|||
|
% STS_LibererZoneMem
|
|||
|
%
|
|||
|
% R<EFBFBD>le : Lib<EFBFBD>ration de la zone d'<EFBFBD>change de sortie par STS Interface.
|
|||
|
%
|
|||
|
% Param<EFBFBD>tres d'entr<EFBFBD>e :
|
|||
|
% Zone (void*) : Zone d'<EFBFBD>change <EFBFBD> lib<EFBFBD>rer (allou<EFBFBD>e pr<EFBFBD>c<EFBFBD>demment par
|
|||
|
% le module STS-Interce par STS_AllouerZoneMem).
|
|||
|
%
|
|||
|
% Param<EFBFBD>tres de sortie : aucun
|
|||
|
%
|
|||
|
% Valeur retourn<EFBFBD>e : aucune
|
|||
|
%
|
|||
|
%-----------------------------------------------------------------------------
|
|||
|
*/
|
|||
|
/* OCL - Defect 115 : Remplacement PTR par FARPTR */
|
|||
|
typedef void (API_ENTRY FARPTR STS_LibererZoneMem)(void FARPTR Zone);
|
|||
|
|
|||
|
#ifdef __cplusplus
|
|||
|
}
|
|||
|
#endif
|
|||
|
|
|||
|
#endif /* __STSITF_H */
|