rb_define_method(cTreeMaster, "nodecount", rbtm_nodecount, 0);
void doInitTreeMaster(void) {  cTreeMaster = rb_define_class_under(mCompLearn,"TreeMaster", rb_cObject);  rb_define_method(cTreeMaster, "setTreeObserver", rbtm_settreeobserver, 1);  rb_define_method(cTreeMaster, "observer=", rbtm_settreeobserver, 1);  rb_define_singleton_method(cTreeMaster, "loadMatrix", rbtm_loadMatrix, 1);  rb_define_singleton_method(cTreeMaster, "new", rbtm_new, 2);  rb_define_method(cTreeMaster, "initialize", rbtm_init, 0);  rb_define_method(cTreeMaster, "findTree", rbtm_findtree, 0);  rb_define_method(cTreeMaster, "startTime", rbtm_getstarttime, 0);  rb_define_method(cTreeMaster, "endTime", rbtm_getendtime, 0);  rb_define_method(cTreeMaster, "examinedcount", rbtm_examinedcount, 0);  rb_define_method(cTreeMaster, "k", rbtm_k, 0);  rb_define_method(cTreeMaster, "labelcount", rbtm_labelcount, 0);  rb_define_method(cTreeMaster, "size", rbtm_labelcount, 0);  rb_define_method(cTreeMaster, "nodecount", rbtm_nodecount, 0);  rb_define_method(cTreeMaster, "abortTreeSearch", rbtm_aborttreesearch, 0);  cTreeObserver = rb_define_class_under(mCompLearn,"TreeObserver", rb_cObject);  rb_define_method(cTreeObserver, "treeImproved", rbto_improved, 1);  rb_define_method(cTreeObserver, "treeRejected", rbto_rejected, 0);  rb_define_method(cTreeObserver, "treeDone", rbto_done, 1);}