versadac  1
versadac - Scalable Recorder Firmware
dre_hist.h
1 /*****************************************************************************
2 FILE : dre_hist.h
3 AUTHOR : Dave Storey
4 SYSTEM : GNU C++ for ARM
5 DESCRIPTION : Data Recording Engine history structures
6  These are owned by the DRE history manager, but have
7  limited accessibility by e.g. the Archive Manager
8  Specification: DEV1198 5.2.4
9 *****************************************************************************/
10 
11 #ifndef __DRE_HIST_H
12 #define __DRE_HIST_H
13 
14 #include "stdtypes.h"
15 
16 #define DRE_MEDIA_ARCHIVE_ATTR DOS_ATTR_ARCHIVE
17 #define DRE_FTP_ARCHIVE_ATTR DOS_ATTR_SYSTEM
18 
20 {
21  struct DRE_GROUP_HIST_T *pGroupHist; // Parent group history
22  DRE_SLICE_T *pEarlier;
23  DRE_SLICE_T *pLater;
24  char *szFileName;
25  char *szBaseName; // Offset into szFileName, skipping directory
26  uint32 uFileSize;
27  uint32 uSequence;
28  double dStartTime;
29  bool bActive; // TRUE if currently being written
30  bool bLocked; // TRUE if locked against deletion
31  uint8 uFileAttr;
32 };
33 
34 
36 {
37  DRE_GROUP_HIST_T *pNext;
38  DRE_SLICE_T *pEarliest;
39  DRE_SLICE_T *pLatest;
40  uint8 uGroup; // Group index: 0...
41  uint16 uNumSlices; // Number of slices
42  uint32 uFileSize; // Total of file sizes for all slices
43  bool bSliceSchedule; // TRUE if slicing is scheduled
44  double dSliceSchedule; // Slicing schedule time (ticks)
45  double dDataBytesPerSec; // Data bytes per second
46  uint32 uFileHeaderSize; // Overhead per file due to headers
47  uint32 uBytesPerSample; // Estimated no of bytes per sample
48  bool bRecording; // TRUE if recording is enabled
49  bool bFtpArchiveEnabled;
50  bool bMediaArchiveEnabled;
51 };
52 
53 
55 {
56  DRE_GROUP_HIST_T *pGroupList;
57  uint32 uUsableSize; // Total file space usable for history
58 };
59 
60 #endif
Definition: dre_hist.h:19
Definition: dre_hist.h:35
Definition: dre_hist.h:54