Module: PCPTrace

Defined in:
lib/pcptrace/kernel.rb,
ext/pcptrace/pcptrace.c

Defined Under Namespace

Modules: KernelMethods

Constant Summary collapse

STATE_NONE =
INT2NUM(PMTRACE_STATE_NONE)
STATE_API =
INT2NUM(PMTRACE_STATE_API)
STATE_COMMS =
INT2NUM(PMTRACE_STATE_COMMS)
STATE_PDU =
INT2NUM(PMTRACE_STATE_PDU)
STATE_PDUBUF =
INT2NUM(PMTRACE_STATE_PDUBUF)
STATE_NOAGENT =
INT2NUM(PMTRACE_STATE_NOAGENT)
STATE_ASYNC =
INT2NUM(PMTRACE_STATE_ASYNC)

Class Method Summary collapse

Class Method Details

.abort(str_id) ⇒ Object



16
17
18
19
# File 'ext/pcptrace/pcptrace.c', line 16

static VALUE rb_ext_abort(VALUE self, VALUE str_id)
{
  return INT2NUM(pmtraceabort(StringValueCStr(str_id)));
}

.begin(str_id) ⇒ Object



6
7
8
9
# File 'ext/pcptrace/pcptrace.c', line 6

static VALUE rb_ext_begin(VALUE self, VALUE str_id)
{
  return INT2NUM(pmtracebegin(StringValueCStr(str_id)));
}

.counter(str_id, double_val) ⇒ Object



31
32
33
34
# File 'ext/pcptrace/pcptrace.c', line 31

static VALUE rb_ext_counter(VALUE self, VALUE str_id, VALUE double_val)
{
  return INT2NUM(pmtracecounter(StringValueCStr(str_id), NUM2DBL(double_val)));
}

.end(str_id) ⇒ Object



11
12
13
14
# File 'ext/pcptrace/pcptrace.c', line 11

static VALUE rb_ext_end(VALUE self, VALUE str_id)
{
  return INT2NUM(pmtraceend(StringValueCStr(str_id)));
}

.errstr(int_code) ⇒ Object



26
27
28
29
# File 'ext/pcptrace/pcptrace.c', line 26

static VALUE rb_ext_errstr(VALUE self, VALUE int_code)
{
  return rb_str_new_cstr(pmtraceerrstr(NUM2INT(int_code)));
}

.obs(str_id, double_val) ⇒ Object



36
37
38
39
# File 'ext/pcptrace/pcptrace.c', line 36

static VALUE rb_ext_obs(VALUE self, VALUE str_id, VALUE double_val)
{
  return INT2NUM(pmtraceobs(StringValueCStr(str_id), NUM2DBL(double_val)));
}

.point(str_id) ⇒ Object



21
22
23
24
# File 'ext/pcptrace/pcptrace.c', line 21

static VALUE rb_ext_point(VALUE self, VALUE str_id)
{
  return INT2NUM(pmtracepoint(StringValueCStr(str_id)));
}

.setup_kernel(enabled, state = PCPTrace::STATE_NONE) ⇒ Object



2
3
4
5
6
# File 'lib/pcptrace/kernel.rb', line 2

def self.setup_kernel(enabled, state = PCPTrace::STATE_NONE)
  Kernel.const_set('PCP_ENABLED', enabled.to_s == "true")
  Kernel.send(:extend, PCPTrace::KernelMethods)
  PCPTrace::state(state)
end

.state(int_code) ⇒ Object



41
42
43
44
# File 'ext/pcptrace/pcptrace.c', line 41

static VALUE rb_ext_state(VALUE self, VALUE int_code)
{
  return INT2NUM(pmtracestate(NUM2INT(int_code)));
}