| 202 | |
| 203 | |
| 204 | static void analyse( int number, const SCHAR* string, const pag* page, int sequence) |
| 205 | { |
| 206 | /************************************** |
| 207 | * |
| 208 | * a n a l y s e |
| 209 | * |
| 210 | ************************************** |
| 211 | * |
| 212 | * Functional description |
| 213 | * Analyse a page event. |
| 214 | * |
| 215 | **************************************/ |
| 216 | |
| 217 | if (sequence) |
| 218 | printf("%d. %s\t%d\t\t", sequence, string, number); |
| 219 | else |
| 220 | printf("%s\t%d\t\t", string, number); |
| 221 | |
| 222 | switch (page->pag_type) |
| 223 | { |
| 224 | case pag_header: |
| 225 | printf("Header page\n"); |
| 226 | break; |
| 227 | |
| 228 | case pag_pages: |
| 229 | printf("Page inventory page\n"); |
| 230 | break; |
| 231 | |
| 232 | case pag_transactions: |
| 233 | printf("Transaction inventory page\n"); |
| 234 | break; |
| 235 | |
| 236 | case pag_pointer: |
| 237 | printf("Pointer page, relation %d, sequence %d\n", |
| 238 | ((pointer_page*) page)->ppg_relation, ((pointer_page*) page)->ppg_sequence); |
| 239 | break; |
| 240 | |
| 241 | case pag_data: |
| 242 | printf("Data page, relation %d, sequence %d\n", |
| 243 | ((data_page*) page)->dpg_relation, ((data_page*) page)->dpg_sequence); |
| 244 | break; |
| 245 | |
| 246 | case pag_root: |
| 247 | printf("Index root page, relation %d\n", |
| 248 | ((index_root_page*) page)->irt_relation); |
| 249 | break; |
| 250 | |
| 251 | case pag_index: |
| 252 | printf("B-Tree page, relation %d, index %d, level %d\n", |
| 253 | ((btree_page*) page)->btr_relation, ((btree_page*) page)->btr_id, |
| 254 | ((btree_page*) page)->btr_level); |
| 255 | break; |
| 256 | |
| 257 | case pag_blob: |
| 258 | printf("Blob page\n\tFlags: %x, lead page: %d, sequence: %d, length: %d\n\t", |
| 259 | page->pag_flags, ((blob_page*) page)->blp_lead_page, |
| 260 | ((blob_page*) page)->blp_sequence, ((blob_page*) page)->blp_length); |
| 261 | break; |