Je ne fais pas d'ascii art dans mes rendus de TP. Nonon
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#ifndef PILOTEBADBGES_H | |
#define PILOTEBADBGES_H | |
/** | |
_ _ | |
| | | | | |
| |__ __ _ __| | __ _ ___ _ _ ___ ___ | |
| '_ \ / _` |/ _` |/ _` |/ _ \ | | / __|/ _ \ | |
| |_) | (_| | (_| | (_| | __/ |_| \__ \ __/ | |
|_.__/ \__,_|\__,_|\__, |\___|\__,_|___/\___| | |
__/ | _ _ _ | |
|___/ (_) | | | | |
_ __ _| | ___ | |_ | |
Réalisé par | '_ \| | |/ _ \| __| | |
Mat. Sabourin | |_) | | | (_) | |_ | |
et Stan. Signoud | .__/|_|_|\___/ \__| | |
| | | |
INSA 2011 / 4IF4 |_| | |
Ce pilote est placé sous licence GPL v2+. | |
Pour plus d'informations, consultez : | |
http://www.gnu.org/licenses/gpl-2.0.html | |
NB : Ce pilote est réalisé dans le cadre d'un TP au Département | |
Informatique de l'INSA de Lyon. Des restrictions de licence | |
peuvent s'appliquer. | |
*/ | |
/*********************************** | |
* Fonctions utilitaires * | |
***********************************/ | |
/** | |
* Installe le pilote de badgeuses sur le système. | |
* @return 0 si tout va bien, ERROR sinon (errno est alors positionné). | |
*/ | |
int bdgInstall(); | |
/** | |
* Ajoute un périphérique badgeuse au système. | |
* @param nomperiph Le nom du périphérique à créer. | |
* @param nodevice Numéro matériel (à la MAC) de la badgeuse. | |
* @return 0 si tout va bien, ERROR sinon (errno est alors positionné). | |
*/ | |
int bdgAdd(char * nomperiph, unsigned short nodevice); | |
/** | |
* Retire un périphérique de badgeuse du système. | |
* @param nomperiph Nom du périphérique à retirer du système. | |
* @return 0 si tout va bien, ERROR sinon (errno est alors positionné). | |
*/ | |
int bdgRemove(char * nomperiph); | |
/** | |
* Désinstalle le pilote du système. | |
* @return 0 si tout va bien, ERROR sinon (errno est positionné par l'IOS). | |
*/ | |
int bdgUninstall(); | |
/*********************************** | |
* Simulation * | |
***********************************/ | |
#define BDG_SIMULATION 1 | |
#ifdef BDG_SIMULATION | |
/** | |
* Handler d'IT simulé. | |
* | |
* Peut être utilisé pour simuler une interruption. | |
* @see BDGREG | |
*/ | |
void bdgITHandler(); | |
/** | |
* @var BDGREG Registre bas-niveau simulé contenant le dernier message | |
* reçu d'une badgeuse. Les deux premiers octets contiennent le numéro | |
* unique de la badgeuse (à-la-MAC), les deux derniers contiennent la | |
* donnée qui en provient. | |
*/ | |
extern char bdgReg[4]; | |
#define BDGREG bdgReg | |
#endif /* BDG_SIMULATION */ | |
/*********************************** | |
* Erreurs * | |
***********************************/ | |
/* Le pilote est déjà installé. */ | |
#define E_BDG_ALREADY_INSTALLED 1042 | |
/* Le pilote n'est pas installé. */ | |
#define E_BDG_NOT_INSTALLED 1043 | |
/* De la mémoire n'a pas pu être allouée. */ | |
#define E_BDG_CANT_ALLOCATE 1044 | |
/* Le nombre maximum de périphériques supporté par | |
le pilote a été atteint. */ | |
#define E_BDG_MAX_DEV 1045 | |
/* Le système a refusé l'ajout du périphérique. */ | |
#define E_BDG_CANT_ADD 1046 | |
/* Le nom de périphérique est inconnu. */ | |
#define E_BDG_WRONG_NAME 1047 | |
/* Le périphérique est déjà ouvert. */ | |
#define E_BDG_ALREADY_OPEN 1048 | |
/* Impossible de faire rentrer ne serait-ce | |
qu'un message dans le buffer proposé. */ | |
#define E_BDG_CANT_FIT 1050 | |
/* Aucun message à lire. | |
(Votre lecture serait-elle trop fréquente ?) */ | |
#define E_BDG_TOO_FAST 1051 | |
/* Impossible de trouver le périphérique. */ | |
#define E_BDG_DEV_NOT_FOUND 1052 | |
/* Impossible de créer une sémaphore. */ | |
#define E_BDG_CANT_CREATE_SEM 1052 | |
#endif /* PILOTEBADBGES_H */ |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment