| 
    DynamoRIO
    
   | 
 
#include <file_reader.h>
  
Public Member Functions | |
| bool | init () override | 
| std::string | get_stream_name () const override | 
  Public Member Functions inherited from dynamorio::drmemtrace::reader_t | |
| uint64_t | get_record_ordinal () const override | 
| uint64_t | get_instruction_ordinal () const override | 
| uint64_t | get_last_timestamp () const override | 
| uint64_t | get_first_timestamp () const override | 
| uint64_t | get_version () const override | 
| uint64_t | get_filetype () const override | 
| uint64_t | get_cache_line_size () const override | 
| uint64_t | get_chunk_instr_count () const override | 
| uint64_t | get_page_size () const override | 
| bool | is_record_kernel () const override | 
| bool | is_record_synthetic () const override | 
  Public Member Functions inherited from dynamorio::drmemtrace::reader_base_t | |
| uint64_t | get_next_trace_pc () const override | 
  Public Member Functions inherited from dynamorio::drmemtrace::memtrace_stream_t | |
| virtual | ~memtrace_stream_t () | 
| virtual int | get_shard_index () const | 
| virtual int64_t | get_output_cpuid () const | 
| virtual int64_t | get_workload_id () const | 
| virtual int64_t | get_input_id () const | 
| virtual int64_t | get_tid () const | 
| virtual memtrace_stream_t * | get_input_interface () const | 
| virtual double | get_schedule_statistic (schedule_statistic_t stat) const | 
Private Member Functions | |
| trace_entry_t * | read_next_entry () override | 
Detailed Description
template<typename T>
class dynamorio::drmemtrace::file_reader_t< T >
We templatize on the file type itself for specializing for compression and other different types. An alternative would be to require a std::istream interface and add gzip_istream_t (paralleling gzip_ostream_t used for raw2trace).
Member Function Documentation
◆ get_stream_name()
      
  | 
  inlineoverridevirtual | 
Returns a name for the memtrace stream. For stored offline traces, this is the base name of the trace on disk. For online traces, this is the name of the pipe.
Implements dynamorio::drmemtrace::memtrace_stream_t.
◆ init()
      
  | 
  inlineoverridevirtual | 
Initializes various state for the reader. E.g., subclasses should remember to set at_eof_ to false here. Also reads the first entry by invoking operator++() so that operator*() is ready to provide one after init().
May block for reading the first entry.
Implements dynamorio::drmemtrace::reader_base_t.
◆ read_next_entry()
      
  | 
  overrideprivatevirtual | 
This reads the next single entry from the underlying single stream of entries.
If it returns nullptr, it will set the EOF bit to distinguish end-of-file from an error.
This is used only by dynamorio::drmemtrace::reader_base_t::get_next_entry() when needed to access the underlying source of entries. Subclasses that need the next entry should use dynamorio::drmemtrace::reader_base_t::get_next_entry() instead.
Implements dynamorio::drmemtrace::reader_base_t.
The documentation for this class was generated from the following file:
- /home/runner/work/dynamorio/dynamorio/build_release-64/clients/include/drmemtrace/file_reader.h
 
      
 Public Member Functions inherited from