rrcommon.h File Reference

#include "ruby.h"
#include "TObject.h"
#include "TList.h"
#include "TArrayC.h"
#include "TArrayS.h"
#include "TArrayI.h"
#include "TArrayL.h"
#include "TArrayF.h"
#include "TArrayD.h"
#include "TSeqCollection.h"
#include "CallFunc.h"

Go to the source code of this file.

Classes

struct  rr_fcn_info
struct  drr_func_entry
struct  drr_func_cache

Defines

#define VALUEFUNC(f)   (f)
#define VOIDFUNC(f)   (f)
#define RRNEW(obj, type)   obj = rb_class_new_instance (0, NULL, type)
#define RRGRAB(fromobj, type, toobj)
#define RRCALL(obj, type)
#define RRCALL2(obj, type, ptr)
#define RRMODCALL(obj, modtype, convfunc)
#define RRMODCALL2(obj, modtype, convfunc, ptr)
#define RRSTRING(v)   (TYPE(v) == T_STRING)
#define RRINT(v)   (TYPE(v) == T_FIXNUM)
#define RRFLOAT(v)   ((TYPE(v) == T_FLOAT) || (TYPE(v) == T_FIXNUM))
#define RRARRAY(v, kind)   (TYPE(v) == T_ARRAY && kind(rb_ary_entry(v, 0)))
#define RRDATA(v)   (TYPE(v) == T_OBJECT)
#define RRFUNC(v)   (TYPE(v) == T_SYMBOL)
#define RRVOID(v)   (v)

Functions

VALUE rr_bool (bool q)
VALUE rr_ary_new (TList *l)
VALUE rr_arrayc_new (const TArrayC *a)
VALUE rr_arrays_new (const TArrayS *a)
VALUE rr_arrayi_new (const TArrayI *a)
VALUE rr_arrayl_new (const TArrayL *a)
VALUE rr_arrayf_new (const TArrayF *a)
VALUE rr_arrayd_new (const TArrayD *a)
VALUE rr_seqcollection_new (TSeqCollection *sc)
void * rr_parse_void (VALUE o)
void rr_tattfill_conv (void **ptr, VALUE klass)
void rr_tattline_conv (void **ptr, VALUE klass)
void rr_tattmarker_conv (void **ptr, VALUE klass)
void rr_tattpad_conv (void **ptr, VALUE klass)
void rr_tatttext_conv (void **ptr, VALUE klass)
void rr_tattaxis_conv (void **ptr, VALUE klass)
double rr_ctf1_fcn (double *, double *)
void rr_register_ctf1_fcn (char *name, ID id)
double rr_ctf2_fcn (double *, double *)
void rr_register_ctf2_fcn (char *name, ID id)
drr_func_cachedrr_func_cache_init (struct drr_func_entry *entry)
void drr_func_cache_push (struct drr_func_cache *cache, struct drr_func_entry *entry)
drr_func_entrydrr_func_cache_find (struct drr_func_cache *cache, char *name)
void drr_func_entry_free (struct drr_func_entry *entry)
static VALUE drr_generic_method (int argc, VALUE argv[], VALUE self)
static VALUE drr_method_missing (int argc, VALUE argv[], VALUE self)

Variables

VALUE cTObject


Define Documentation

#define RRARRAY ( v,
kind   )     (TYPE(v) == T_ARRAY && kind(rb_ary_entry(v, 0)))

Definition at line 82 of file rrcommon.h.

#define RRCALL ( obj,
type   ) 

Value:

type *v;                                                    \
    Data_Get_Struct(rb_iv_get (obj, "__rr__"), type, v); ((type *)(v))

Definition at line 60 of file rrcommon.h.

#define RRCALL2 ( obj,
type,
ptr   ) 

Value:

type *v;                                                    \
    Data_Get_Struct(rb_iv_get (obj, "__rr__"), type, v); ptr = v

Definition at line 64 of file rrcommon.h.

#define RRDATA ( v   )     (TYPE(v) == T_OBJECT)

Definition at line 83 of file rrcommon.h.

#define RRFLOAT ( v   )     ((TYPE(v) == T_FLOAT) || (TYPE(v) == T_FIXNUM))

Definition at line 81 of file rrcommon.h.

#define RRFUNC ( v   )     (TYPE(v) == T_SYMBOL)

Definition at line 84 of file rrcommon.h.

#define RRGRAB ( fromobj,
type,
toobj   ) 

Value:

type *toobj;                                                \
    Data_Get_Struct (rb_iv_get (fromobj, "__rr__"), type, toobj)

Definition at line 56 of file rrcommon.h.

Referenced by rr_parse_void(), and rr_to_ary().

#define RRINT ( v   )     (TYPE(v) == T_FIXNUM)

Definition at line 80 of file rrcommon.h.

#define RRMODCALL ( obj,
modtype,
convfunc   ) 

Value:

modtype *v;                                                 \
    Data_Get_Struct (rb_iv_get (obj, "__rr__"), modtype, v);    \
    convfunc ((void**)&v, obj); v

Definition at line 68 of file rrcommon.h.

#define RRMODCALL2 ( obj,
modtype,
convfunc,
ptr   ) 

Value:

modtype *v;                                                 \
    Data_Get_Struct (rb_iv_get (obj, "__rr__"), modtype, v);    \
    convfunc ((void**)&v, obj); ptr = v

Definition at line 73 of file rrcommon.h.

#define RRNEW ( obj,
type   )     obj = rb_class_new_instance (0, NULL, type)

Definition at line 54 of file rrcommon.h.

Referenced by drr_as(), drr_return(), rr_ary_new(), rr_gapplication(), rr_gbenchmark(), rr_gdirectory(), rr_gpad(), rr_grandom(), rr_groot(), rr_gstyle(), rr_gsystem(), and rr_seqcollection_new().

#define RRSTRING ( v   )     (TYPE(v) == T_STRING)

Definition at line 79 of file rrcommon.h.

#define RRVOID ( v   )     (v)

Definition at line 85 of file rrcommon.h.

#define VALUEFUNC (  )     (f)

Definition at line 48 of file rrcommon.h.

Referenced by drr_method_missing(), init_global_enums(), and Init_libRuby().

#define VOIDFUNC (  )     (f)

Definition at line 49 of file rrcommon.h.


Function Documentation

struct drr_func_entry* drr_func_cache_find ( struct drr_func_cache cache,
char *  name 
)

Definition at line 604 of file drr.cxx.

References drr_func_cache::entry, drr_func_entry::name, drr_func_cache::next, and NULL.

Referenced by drr_generic_method().

struct drr_func_cache* drr_func_cache_init ( struct drr_func_entry entry  ) 

Definition at line 578 of file drr.cxx.

References entry, malloc(), and NULL.

Referenced by drr_method_missing().

void drr_func_cache_push ( struct drr_func_cache cache,
struct drr_func_entry entry 
)

Definition at line 587 of file drr.cxx.

References entry, malloc(), n, drr_func_cache::next, and NULL.

Referenced by drr_method_missing().

void drr_func_entry_free ( struct drr_func_entry entry  ) 

Definition at line 617 of file drr.cxx.

References entry, and free().

static VALUE drr_generic_method ( int  argc,
VALUE  argv[],
VALUE  self 
) [static]

static VALUE drr_method_missing ( int  argc,
VALUE  argv[],
VALUE  self 
) [static]

VALUE rr_arrayc_new ( const TArrayC a  ) 

Definition at line 72 of file drr.cxx.

References a, and i.

VALUE rr_arrayd_new ( const TArrayD a  ) 

Definition at line 127 of file drr.cxx.

References a, and i.

VALUE rr_arrayf_new ( const TArrayF a  ) 

Definition at line 116 of file drr.cxx.

References a, and i.

VALUE rr_arrayi_new ( const TArrayI a  ) 

Definition at line 94 of file drr.cxx.

References a, and i.

VALUE rr_arrayl_new ( const TArrayL a  ) 

Definition at line 105 of file drr.cxx.

References a, and i.

VALUE rr_arrays_new ( const TArrayS a  ) 

Definition at line 83 of file drr.cxx.

References a, and i.

VALUE rr_ary_new ( TList l  ) 

Definition at line 44 of file drr.cxx.

References TObject::ClassName(), cTObject, l, o, and RRNEW.

Referenced by drr_return(), and rr_to_ary().

VALUE rr_bool ( bool  q  ) 

Definition at line 183 of file drr.cxx.

Referenced by drr_return().

double rr_ctf1_fcn ( double ,
double  
)

Definition at line 198 of file drr.cxx.

References fcn(), TF1::GetCurrent(), i, info, n, NULL, rr_tf1_table, and rr_tf1_tblptr.

double rr_ctf2_fcn ( double ,
double  
)

Definition at line 244 of file drr.cxx.

References fcn(), TF1::GetCurrent(), i, info, n, NULL, rr_tf2_table, and rr_tf2_tblptr.

void* rr_parse_void ( VALUE  o  ) 

Definition at line 154 of file drr.cxx.

References i, malloc(), NULL, RRGRAB, and TYPE.

void rr_register_ctf1_fcn ( char *  name,
ID  id 
)

Definition at line 229 of file drr.cxx.

References info, malloc(), rr_tf1_table, and rr_tf1_tblptr.

void rr_register_ctf2_fcn ( char *  name,
ID  id 
)

Definition at line 275 of file drr.cxx.

References info, malloc(), rr_tf2_table, and rr_tf2_tblptr.

VALUE rr_seqcollection_new ( TSeqCollection sc  ) 

Definition at line 138 of file drr.cxx.

References TSeqCollection::At(), cTObject, TCollection::GetSize(), i, o, and RRNEW.

void rr_tattaxis_conv ( void **  ptr,
VALUE  klass 
)

void rr_tattfill_conv ( void **  ptr,
VALUE  klass 
)

void rr_tattline_conv ( void **  ptr,
VALUE  klass 
)

void rr_tattmarker_conv ( void **  ptr,
VALUE  klass 
)

void rr_tattpad_conv ( void **  ptr,
VALUE  klass 
)

void rr_tatttext_conv ( void **  ptr,
VALUE  klass 
)


Variable Documentation

VALUE cTObject

Definition at line 42 of file drr.cxx.

Referenced by TRuby::Bind(), drr_init(), drr_method_missing(), drr_return(), Init_libRuby(), rr_ary_new(), rr_gapplication(), rr_gbenchmark(), rr_gdirectory(), rr_gpad(), rr_grandom(), rr_groot(), rr_gstyle(), rr_gsystem(), and rr_seqcollection_new().


Generated on Tue Jul 5 15:56:10 2011 for ROOT_528-00b_version by  doxygen 1.5.1