comparison audioDB.h @ 142:c74048e9b569 powertable

Beginnings of power table support Database header change (and hence version) Read in the powertable on init (and write on create)
author mas01cr
date Tue, 30 Oct 2007 14:26:50 +0000
parents a5d5a55a412d
children 6ae986868114
comparison
equal deleted inserted replaced
141:3e6fa581bdab 142:c74048e9b569
44 #define COM_KEYLIST "--keyList" 44 #define COM_KEYLIST "--keyList"
45 #define COM_TIMES "--times" 45 #define COM_TIMES "--times"
46 46
47 #define O2_OLD_MAGIC ('O'|'2'<<8|'D'<<16|'B'<<24) 47 #define O2_OLD_MAGIC ('O'|'2'<<8|'D'<<16|'B'<<24)
48 #define O2_MAGIC ('o'|'2'<<8|'d'<<16|'b'<<24) 48 #define O2_MAGIC ('o'|'2'<<8|'d'<<16|'b'<<24)
49 #define O2_FORMAT_VERSION (0U) 49 #define O2_FORMAT_VERSION (1U)
50 50
51 #define O2_DEFAULT_POINTNN (10U) 51 #define O2_DEFAULT_POINTNN (10U)
52 #define O2_DEFAULT_TRACKNN (10U) 52 #define O2_DEFAULT_TRACKNN (10U)
53 53
54 #define O2_DEFAULTDBSIZE (2000000000) // 2GB table size 54 #define O2_DEFAULTDBSIZE (2000000000) // 2GB table size
65 #define O2_MAXNN (10000U) 65 #define O2_MAXNN (10000U)
66 66
67 // Flags 67 // Flags
68 #define O2_FLAG_L2NORM (0x1U) 68 #define O2_FLAG_L2NORM (0x1U)
69 #define O2_FLAG_MINMAX (0x2U) 69 #define O2_FLAG_MINMAX (0x2U)
70 #define O2_FLAG_POWER (0x4U)
70 #define O2_FLAG_TIMES (0x20U) 71 #define O2_FLAG_TIMES (0x20U)
71 72
72 // Query types 73 // Query types
73 #define O2_POINT_QUERY (0x4U) 74 #define O2_POINT_QUERY (0x4U)
74 #define O2_SEQUENCE_QUERY (0x8U) 75 #define O2_SEQUENCE_QUERY (0x8U)
102 uint32_t fileTableOffset; 103 uint32_t fileTableOffset;
103 uint32_t trackTableOffset; 104 uint32_t trackTableOffset;
104 uint32_t dataOffset; 105 uint32_t dataOffset;
105 uint32_t l2normTableOffset; 106 uint32_t l2normTableOffset;
106 uint32_t timesTableOffset; 107 uint32_t timesTableOffset;
108 uint32_t powerTableOffset;
107 uint32_t dbSize; 109 uint32_t dbSize;
108 } dbTableHeaderT, *dbTableHeaderPtr; 110 } dbTableHeaderT, *dbTableHeaderPtr;
109 111
110 112
111 class audioDB{ 113 class audioDB{
137 double* inBuf; 139 double* inBuf;
138 double* l2normTable; 140 double* l2normTable;
139 double* qNorm; 141 double* qNorm;
140 double* sNorm; 142 double* sNorm;
141 double* timesTable; 143 double* timesTable;
144 double* powerTable;
142 145
143 // Flags and parameters 146 // Flags and parameters
144 unsigned verbosity; // how much do we want to know? 147 unsigned verbosity; // how much do we want to know?
145 unsigned size; // given size (for creation) 148 unsigned size; // given size (for creation)
146 unsigned queryType; // point queries default 149 unsigned queryType; // point queries default