Sha256: db45109d40f645a623523ab6252fda3eee490403977a4d916e87b74a9175189d
Contents?: true
Size: 1.38 KB
Versions: 13
Compression:
Stored size: 1.38 KB
Contents
/* Copyright (C) 2005-2019 Shugo Maeda <shugo@ruby-lang.org> and Charlie Savage <cfis@savagexi.com> Please see the LICENSE file for copyright and distribution information */ #ifndef __rp_measurementMENT_H__ #define __rp_measurementMENT_H__ #include "ruby_prof.h" extern VALUE mMeasure; typedef double (*get_measurement)(rb_trace_arg_t* trace_arg); typedef enum { MEASURE_WALL_TIME, MEASURE_PROCESS_TIME, MEASURE_ALLOCATIONS, MEASURE_MEMORY } prof_measure_mode_t; typedef struct prof_measurer_t { get_measurement measure; prof_measure_mode_t mode; double multiplier; bool track_allocations; } prof_measurer_t; /* Callers and callee information for a method. */ typedef struct prof_measurement_t { double total_time; double self_time; double wait_time; int called; VALUE object; } prof_measurement_t; prof_measurer_t* prof_get_measurer(prof_measure_mode_t measure, bool track_allocations); double prof_measure(prof_measurer_t* measurer, rb_trace_arg_t* trace_arg); prof_measurement_t* prof_measurement_create(void); void prof_measurement_free(prof_measurement_t* measurement); VALUE prof_measurement_wrap(prof_measurement_t* measurement); prof_measurement_t* prof_get_measurement(VALUE self); void prof_measurement_mark(void* data); void rp_init_measure(void); #endif //__rp_measurementMENT_H__
Version data entries
13 entries across 13 versions & 1 rubygems