X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;f=ltt%2Fbranches%2Fpoly%2Fltt%2Fltt-private.h;h=726908cbcc9948c3a3682074c61a06989c7244c7;hb=1c736ed5fd25e728fa1df0899be03c4853c556d8;hp=6e9e3e48af80d22659573a730675a6fbfed15bfd;hpb=c02ea99f196ff9bf99335fcf0cae4efc0e28f051;p=lttv.git diff --git a/ltt/branches/poly/ltt/ltt-private.h b/ltt/branches/poly/ltt/ltt-private.h index 6e9e3e48..726908cb 100644 --- a/ltt/branches/poly/ltt/ltt-private.h +++ b/ltt/branches/poly/ltt/ltt-private.h @@ -65,7 +65,7 @@ struct _LttType{ char * type_name; //type name if it is a named type char * element_name; //elements name of the struct char * fmt; - int size; + unsigned int size; LttTypeEnum type_class; //which type char ** enum_strings; //for enum labels struct _LttType ** element_type; //for array, sequence and struct @@ -79,8 +79,8 @@ struct _LttEventType{ int index; //id of the event type within the facility LttFacility * facility; //the facility that contains the event type LttField * root_field; //root field - int latest_block; //the latest block using the event type - int latest_event; //the latest event using the event type + unsigned int latest_block; //the latest block using the event type + unsigned int latest_event; //the latest event using the event type }; struct _LttEvent{ @@ -90,8 +90,8 @@ struct _LttEvent{ LttCycleCount event_cycle_count; LttTracefile * tracefile; void * data; //event data - int which_block; //the current block of the event - int which_event; //the position of the event + unsigned int which_block; //the current block of the event + unsigned int which_event; //the position of the event /* This is a workaround for fast position seek */ void * last_event_pos; @@ -99,6 +99,9 @@ struct _LttEvent{ LttTime prev_event_time; //the time of the previous event LttCycleCount pre_cycle_count; //previous cycle count of the event int count; //the number of overflow of cycle count + gint64 overflow_nsec; //precalculated nsec for overflows + TimeHeartbeat * last_heartbeat; //last heartbeat + /* end of workaround */ }; @@ -137,12 +140,12 @@ struct _LttField{ struct _LttFacility{ char * name; //facility name - int event_number; //number of events in the facility + unsigned int event_number; //number of events in the facility LttChecksum checksum; //checksum of the facility guint32 base_id; //base id of the facility LttEventType ** events; //array of event types LttType ** named_types; - int named_types_number; + unsigned int named_types_number; }; struct _LttTracefile{ @@ -151,16 +154,24 @@ struct _LttTracefile{ int fd; //file descriptor off_t file_size; //file size unsigned block_size; //block_size - int block_number; //number of blocks in the file - int which_block; //which block the current block is - int which_event; //which event of the current block + unsigned int block_number; //number of blocks in the file + unsigned int which_block; //which block the current block is + unsigned int which_event; //which event of the current block //is currently processed LttTime current_event_time; //time of the current event BlockStart * a_block_start; //block start of the block BlockEnd * a_block_end; //block end of the block + TimeHeartbeat * last_heartbeat; //last heartbeat void * cur_event_pos; //the position of the current event void * buffer; //the buffer containing the block - double cycle_per_nsec; //Cycles per nsec + double nsec_per_cycle; //Nsec per cycle + guint64 one_overflow_nsec; //nsec for one overflow + gint64 overflow_nsec; //precalculated nsec for overflows + //can be negative to include value + //of block start cycle count. + //incremented at each overflow while + //reading. + //LttCycleCount cycles_per_nsec_reciprocal; // Optimisation for speed unsigned cur_heart_beat_number; //current number of heart beat in the buf LttCycleCount cur_cycle_count; //current cycle count of the event void * last_event_pos; @@ -168,7 +179,7 @@ struct _LttTracefile{ LttTime prev_block_end_time; //the end time of previous block LttTime prev_event_time; //the time of the previous event LttCycleCount pre_cycle_count; //previous cycle count of the event - int count; //the number of overflow of cycle count + unsigned int count; //the number of overflow of cycle count }; struct _LttTrace{ @@ -202,6 +213,8 @@ struct _LttEventPosition{ LttTime prev_event_time; //the time of the previous event LttCycleCount pre_cycle_count; //previous cycle count of the event int count; //the number of overflow of cycle count + gint64 overflow_nsec; //precalculated nsec for overflows + TimeHeartbeat * last_heartbeat; //last heartbeat /* end of workaround */ };