Inheritance diagram for TAO_Notify::Routing_Slip_Persistence_Manager::Routing_Slip_Header:
Public Member Functions | |
Routing_Slip_Header () | |
virtual size_t | extract_header (Persistent_Storage_Block &psb, size_t offset=0) |
virtual size_t | put_header (Persistent_Storage_Block &psb, size_t offset=0) |
Public Attributes | |
Block_Number | next_routing_slip_block |
The next event in the system. | |
Block_Serial_Number | next_serial_number |
The next expected serial number. | |
Block_Number | event_block |
Definition at line 156 of file Routing_Slip_Persistence_Manager.h.
TAO_Notify::Routing_Slip_Persistence_Manager::Routing_Slip_Header::Routing_Slip_Header | ( | ) |
Definition at line 345 of file Routing_Slip_Persistence_Manager.cpp.
00346 : Block_Header (BT_Event) 00347 , next_routing_slip_block(0) 00348 , next_serial_number(0) 00349 , event_block(0) 00350 { 00351 }
size_t TAO_Notify::Routing_Slip_Persistence_Manager::Routing_Slip_Header::extract_header | ( | Persistent_Storage_Block & | psb, | |
size_t | offset = 0 | |||
) | [virtual] |
Reimplemented from TAO_Notify::Routing_Slip_Persistence_Manager::Block_Header.
Definition at line 354 of file Routing_Slip_Persistence_Manager.cpp.
References TAO_Notify::Persistent_Storage_Block::data(), event_block, TAO_Notify::Routing_Slip_Persistence_Manager::Block_Header::extract_header(), next_routing_slip_block, and next_serial_number.
00356 { 00357 size_t pos = offset; 00358 pos = this->Block_Header::extract_header(psb, pos); 00359 unsigned char* data = psb.data(); 00360 next_routing_slip_block = data[pos++]; 00361 next_routing_slip_block = (next_routing_slip_block << 8) + data[pos++]; 00362 next_routing_slip_block = (next_routing_slip_block << 8) + data[pos++]; 00363 next_routing_slip_block = (next_routing_slip_block << 8) + data[pos++]; 00364 next_serial_number = data[pos++]; 00365 next_serial_number = (next_serial_number << 8) + data[pos++]; 00366 next_serial_number = (next_serial_number << 8) + data[pos++]; 00367 next_serial_number = (next_serial_number << 8) + data[pos++]; 00368 next_serial_number = (next_serial_number << 8) + data[pos++]; 00369 next_serial_number = (next_serial_number << 8) + data[pos++]; 00370 next_serial_number = (next_serial_number << 8) + data[pos++]; 00371 next_serial_number = (next_serial_number << 8) + data[pos++]; 00372 event_block = data[pos++]; 00373 event_block = (event_block << 8) + data[pos++]; 00374 event_block = (event_block << 8) + data[pos++]; 00375 event_block = (event_block << 8) + data[pos++]; 00376 return pos; 00377 }
size_t TAO_Notify::Routing_Slip_Persistence_Manager::Routing_Slip_Header::put_header | ( | Persistent_Storage_Block & | psb, | |
size_t | offset = 0 | |||
) | [virtual] |
Reimplemented from TAO_Notify::Routing_Slip_Persistence_Manager::Block_Header.
Definition at line 380 of file Routing_Slip_Persistence_Manager.cpp.
References TAO_Notify::Persistent_Storage_Block::data(), event_block, next_routing_slip_block, next_serial_number, and TAO_Notify::Routing_Slip_Persistence_Manager::Block_Header::put_header().
Referenced by TAO_Notify::Routing_Slip_Persistence_Manager::store_root(), and TAO_Notify::Routing_Slip_Persistence_Manager::write_first_routing_slip_block().
00382 { 00383 // Assume that our psb can hold our small amount of data... 00384 size_t pos = offset; 00385 // Store serial number, next_overflow and data_size 00386 pos = this->Block_Header::put_header(psb, pos); 00387 00388 unsigned char* data = psb.data(); 00389 // Store next_routing_slip_block 00390 data[pos++] = static_cast<unsigned char> (next_routing_slip_block >> 24); 00391 data[pos++] = static_cast<unsigned char> ((next_routing_slip_block >> 16) & 0xff); 00392 data[pos++] = static_cast<unsigned char> ((next_routing_slip_block >> 8) & 0xff); 00393 data[pos++] = static_cast<unsigned char> (next_routing_slip_block & 0xff); 00394 // Store serial_number 00395 data[pos++] = static_cast<unsigned char> ((next_serial_number >> 56) & 0xff); 00396 data[pos++] = static_cast<unsigned char> ((next_serial_number >> 48) & 0xff); 00397 data[pos++] = static_cast<unsigned char> ((next_serial_number >> 40) & 0xff); 00398 data[pos++] = static_cast<unsigned char> ((next_serial_number >> 32) & 0xff); 00399 data[pos++] = static_cast<unsigned char> ((next_serial_number >> 24) & 0xff); 00400 data[pos++] = static_cast<unsigned char> ((next_serial_number >> 16) & 0xff); 00401 data[pos++] = static_cast<unsigned char> ((next_serial_number >> 8) & 0xff); 00402 data[pos++] = static_cast<unsigned char> ((next_serial_number >> 0) & 0xff); 00403 // Store event_block 00404 data[pos++] = static_cast<unsigned char> (event_block >> 24); 00405 data[pos++] = static_cast<unsigned char> ((event_block >> 16) & 0xff); 00406 data[pos++] = static_cast<unsigned char> ((event_block >> 8) & 0xff); 00407 data[pos++] = static_cast<unsigned char> (event_block & 0xff); 00408 return pos; 00409 }
Definition at line 170 of file Routing_Slip_Persistence_Manager.h.
Referenced by extract_header(), put_header(), and TAO_Notify::Routing_Slip_Persistence_Manager::store_i().
Block_Number TAO_Notify::Routing_Slip_Persistence_Manager::Routing_Slip_Header::next_routing_slip_block |
The next event in the system.
Definition at line 167 of file Routing_Slip_Persistence_Manager.h.
Referenced by extract_header(), put_header(), and TAO_Notify::Routing_Slip_Persistence_Manager::update_next_manager().
Block_Serial_Number TAO_Notify::Routing_Slip_Persistence_Manager::Routing_Slip_Header::next_serial_number |
The next expected serial number.
Definition at line 169 of file Routing_Slip_Persistence_Manager.h.
Referenced by extract_header(), put_header(), and TAO_Notify::Routing_Slip_Persistence_Manager::update_next_manager().