class RubyProf::CallTreePrinter

def determine_event_specification_and_value_scale

def determine_event_specification_and_value_scale
  @event_specification = "events: "
  case @result.measure_mode
    when RubyProf::PROCESS_TIME
      @value_scale = RubyProf::CLOCKS_PER_SEC
      @event_specification << 'process_time'
    when RubyProf::WALL_TIME
      @value_scale = 1_000_000
      @event_specification << 'wall_time'
    when RubyProf.const_defined?(:ALLOCATIONS) && RubyProf::ALLOCATIONS
      @value_scale = 1
      @event_specification << 'allocations'
    when RubyProf.const_defined?(:MEMORY) && RubyProf::MEMORY
      @value_scale = 1
      @event_specification << 'memory'
    when RubyProf.const_defined?(:GC_RUNS) && RubyProf::GC_RUNS
      @value_scale = 1
      @event_specification << 'gc_runs'
    when RubyProf.const_defined?(:GC_TIME) && RubyProf::GC_TIME
      @value_scale = 1000000
      @event_specification << 'gc_time'
    else
      raise "Unknown measure mode: #{RubyProf.measure_mode}"
  end
end