versadac  1
versadac - Scalable Recorder Firmware
dre_exif.h
1 /*****************************************************************************
2 FILE : dre_exif.h
3 VERSION : $Id: dre_exif.h 4938 2006-10-10 14:20:18Z martinto $
4 AUTHOR : Dave Storey
5 SYSTEM : GNU C++ for Power PC
6 DESCRIPTION : Data Recording Engine exchange interface.
7  This interface is specified in:
8  DEV1198: 5.2.4, section 2
9 *****************************************************************************/
10 
11 #ifndef __DRE_EXIF_H
12 #define __DRE_EXIF_H
13 
14 
15 /* The name of the DRE exchange */
16 #define DRE_X_NAME ((char*)"DREX")
17 
18 
19 /* The first uint32 of the exchange message is the request id, which will
20  be defined here. The remaining uint32s are message specific, as defined in
21  design spec DEV1198:5.2.4.
22 
23  The request id is split into categories, for internal coding convenience.
24  The top uint16 of this is used to determine the category, as follows:
25 */
26 
27 #define DRE_X_CATEG_MASK (0xffff<<16)
28 #define DRE_X_CATEG_GENERAL (0x0000<<16)
29 #define DRE_X_CATEG_ARCHIVE (0x0001<<16)
30 #define DRE_X_CATEG_BATCH (0x0002<<16)
31 
32 
33 /* General requests */
34 
35 /* Wake up and service the DRE queue now */
36 #define DRE_X_GENERAL_SERVICE_QUEUE (DRE_X_CATEG_GENERAL + 0)
37 /* Detach from DRE queue */
38 #define DRE_X_GENERAL_DETACH (DRE_X_CATEG_GENERAL + 1)
39 /* Process history header */
40 #define DRE_X_GENERAL_PROCESS_HIST_HDR (DRE_X_CATEG_GENERAL + 2)
41 /* Flush UHH files */
42 #define DRE_X_GENERAL_FLUSH_FILES (DRE_X_CATEG_GENERAL + 3)
43 /* Erase all UHH files */
44 #define DRE_X_GENERAL_ERASE_FILES (DRE_X_CATEG_GENERAL + 4)
45 /* Kill the DRE task */
46 #define DRE_X_GENERAL_KILL (DRE_X_CATEG_GENERAL + 999)
47 
48 
49 /* Archive requests */
50 #define DRE_X_ARCHIVE_LOCK_HIST (DRE_X_CATEG_ARCHIVE + 0)
51 #define DRE_X_ARCHIVE_UNLOCK_HIST (DRE_X_CATEG_ARCHIVE + 1)
52 #define DRE_X_ARCHIVE_LOCK_SLICE (DRE_X_CATEG_ARCHIVE + 2)
53 #define DRE_X_ARCHIVE_UNLOCK_SLICE (DRE_X_CATEG_ARCHIVE + 3)
54 #define DRE_X_ARCHIVE_SCHED_SLICE (DRE_X_CATEG_ARCHIVE + 4)
55 
56 /* Archive responses */
57 #define DRE_X_ARCHIVE_LOCK_HIST_ACK (DRE_X_CATEG_ARCHIVE + 0)
58 
59 
60 /* Batch requests */
61 #define DRE_X_BATCH_NEW (DRE_X_CATEG_BATCH + 0)
62 
63 /* Batch responses */
64 #define DRE_X_BATCH_NEW_ACK (DRE_X_CATEG_BATCH + 0)
65 
66 #define CONFIRM_CLEAR_HISTORY_FILENAME ("/application/OkToClearHistory.txt")
67 
68 #if (0)
69 // HISTORY CLEAR NOT SUPPORTED IN THE NANO
70 extern bool emptyDreHistoryAndWait();
71 #endif
72 
73 #endif