Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
bitmsk.h@0:b3a2e39a13ad, 2012-11-28 (annotated)
- Committer:
- greletj
- Date:
- Wed Nov 28 18:52:43 2012 +0000
- Revision:
- 0:b3a2e39a13ad
- Child:
- 1:a4c87bc5b008
new statisic library
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| greletj | 0:b3a2e39a13ad | 1 | /* |
| greletj | 0:b3a2e39a13ad | 2 | * bitmsk.h |
| greletj | 0:b3a2e39a13ad | 3 | */ |
| greletj | 0:b3a2e39a13ad | 4 | |
| greletj | 0:b3a2e39a13ad | 5 | #ifndef bitmsk_H |
| greletj | 0:b3a2e39a13ad | 6 | #define bitmsk_H |
| greletj | 0:b3a2e39a13ad | 7 | |
| greletj | 0:b3a2e39a13ad | 8 | #include <string.h> |
| greletj | 0:b3a2e39a13ad | 9 | |
| greletj | 0:b3a2e39a13ad | 10 | #define MAX_TACHES 32 // Maxi arbitraire |
| greletj | 0:b3a2e39a13ad | 11 | #define BITMSK_SIZE MAX_TACHES / 8 |
| greletj | 0:b3a2e39a13ad | 12 | #define BITMSK_RIEN 0 |
| greletj | 0:b3a2e39a13ad | 13 | typedef unsigned char BITMSK; |
| greletj | 0:b3a2e39a13ad | 14 | |
| greletj | 0:b3a2e39a13ad | 15 | typedef enum { ADD, |
| greletj | 0:b3a2e39a13ad | 16 | REM, |
| greletj | 0:b3a2e39a13ad | 17 | SETF, |
| greletj | 0:b3a2e39a13ad | 18 | SETB, |
| greletj | 0:b3a2e39a13ad | 19 | SETA, |
| greletj | 0:b3a2e39a13ad | 20 | IS |
| greletj | 0:b3a2e39a13ad | 21 | } TMODE; // cf Win::seta() |
| greletj | 0:b3a2e39a13ad | 22 | |
| greletj | 0:b3a2e39a13ad | 23 | // #define NOPID -1 // DOS |
| greletj | 0:b3a2e39a13ad | 24 | |
| greletj | 0:b3a2e39a13ad | 25 | #define NOPIDUNIX -1 |
| greletj | 0:b3a2e39a13ad | 26 | typedef int PID; // De NOPID a MAX_TACHES |
| greletj | 0:b3a2e39a13ad | 27 | |
| greletj | 0:b3a2e39a13ad | 28 | #define BITMODE TMODE // cf. video.h |
| greletj | 0:b3a2e39a13ad | 29 | |
| greletj | 0:b3a2e39a13ad | 30 | class Bitmsk |
| greletj | 0:b3a2e39a13ad | 31 | { |
| greletj | 0:b3a2e39a13ad | 32 | // Membres |
| greletj | 0:b3a2e39a13ad | 33 | private: |
| greletj | 0:b3a2e39a13ad | 34 | BITMSK bits[ BITMSK_SIZE ]; |
| greletj | 0:b3a2e39a13ad | 35 | |
| greletj | 0:b3a2e39a13ad | 36 | // Methodes |
| greletj | 0:b3a2e39a13ad | 37 | public: |
| greletj | 0:b3a2e39a13ad | 38 | bool requete( BITMODE mode,PID pid ); |
| greletj | 0:b3a2e39a13ad | 39 | void raz( void ); |
| greletj | 0:b3a2e39a13ad | 40 | |
| greletj | 0:b3a2e39a13ad | 41 | // Constructeurs |
| greletj | 0:b3a2e39a13ad | 42 | public: |
| greletj | 0:b3a2e39a13ad | 43 | Bitmsk( PID nb = 0,... ); |
| greletj | 0:b3a2e39a13ad | 44 | Bitmsk( Bitmsk &modele ); |
| greletj | 0:b3a2e39a13ad | 45 | }; |
| greletj | 0:b3a2e39a13ad | 46 | |
| greletj | 0:b3a2e39a13ad | 47 | /***************************************************************************** |
| greletj | 0:b3a2e39a13ad | 48 | * Prototypes des fonctions d'interface * |
| greletj | 0:b3a2e39a13ad | 49 | *****************************************************************************/ |
| greletj | 0:b3a2e39a13ad | 50 | BITMSK setmsk( BITMSK *bitmsk,BITMODE mode,BITMSK new_msk ); |
| greletj | 0:b3a2e39a13ad | 51 | |
| greletj | 0:b3a2e39a13ad | 52 | #endif |