[ROOT] TTree::MakeSelector compiling idiosyncracy

From: Mike Kordosky (kordosky@mail.hep.utexas.edu)
Date: Sun Apr 08 2001 - 20:10:59 MEST


Hi,

I am using the TTree::MakeSelector method to analyze some data that I have
in a TTree.  It seems that when I initially have root compile the selector
code, I get a seg fault.  The shared library does get created though, and
further root sessions don't produce any problems.  Here is a sample
session:

  *******************************************
  *                                         *
  *        W E L C O M E  to  R O O T       *
  *                                         *
  *   Version   3.00/06      3 April 2001   *
  *                                         *
  *  You are welcome to visit our Web site  *
  *          http://root.cern.ch            *
  *                                         *
  *******************************************

FreeType Engine v1.x used to render TrueType fonts.

CINT/ROOT C/C++ Interpreter version 5.14.79, Feb 24 2001
Type ? for help. Commands must be C++ statements.
Enclose multiple statements between { }.
root [0] gSystem->Load("libTestStand.so");             
root [1] TFile m3file("batch-1063.root");              
root [2] TTree* tree = (TTree*)m3file.Get("T");        
root [3] tree->Process("SimpleSelector.C+","fillList");
Creating shared library
/home/kordosky/work/devel/maketree/./SimpleSelector_C.soClass
SimpleSelector: Streamer() not declared
Class SimpleSelector: ShowMembers() not declared

 *** Break *** segmentation violation
Root > tree->Process("SimpleSelector.C+","fillList");
Unmodified script has already been compiled and loaded. 
Starting SimpleSelector Analysis with Option: fillList
Before Histogram
Before HistRef
After HistRef
<TCanvas::MakeDefCanvas>: created default TCanvas with name c1
root [5] .q                                            
alpha2:/home/kordosky/work/devel/maketree# root
  *******************************************
  *                                         *
  *        W E L C O M E  to  R O O T       *
  *                                         *
  *   Version   3.00/06      3 April 2001   *
  *                                         *
  *  You are welcome to visit our Web site  *
  *          http://root.cern.ch            *
  *                                         *
  *******************************************

FreeType Engine v1.x used to render TrueType fonts.

CINT/ROOT C/C++ Interpreter version 5.14.79, Feb 24 2001
Type ? for help. Commands must be C++ statements.
Enclose multiple statements between { }.
root [0] gSystem->Load("libTestStand.so");             
root [1] TFile m3file("batch-1063.root");              
root [2] TTree* tree = (TTree*)m3file.Get("T");        
root [3] tree->Process("SimpleSelector.C+","fillList");
Starting SimpleSelector Analysis with Option: fillList
Before Histogram
Before HistRef
After HistRef
<TCanvas::MakeDefCanvas>: created default TCanvas with name c1
root [4] PostScript file: c1.ps has been created

My tree entry does contain a (split) class called HistRef, which I load
via gSystem->Load(...) above.  I include HistRef.h in the SimpleSelector.h
file.  Perhaps this is causing some of the problems? I actually don't care
about this one segfault, since I think that during the second session I
am running at compiled speed and the seg fault only seems to happen once.  
Anyone got any ideas?

Thanks!

Mike Kordosky



This archive was generated by hypermail 2b29 : Tue Jan 01 2002 - 17:50:41 MET