Can't compile dictionary

From: Oliver Mang (mang@ifkhep.uni-kiel.de)
Date: Fri Jul 23 1999 - 16:28:02 MEST


Hello ROOTers,
I'm having trouble compiling a dictionary generated by rootcint (ROOT
2.22.09, SuSE Linux 6.1, version 2.2.5 ,g++ version egcs-2.91.66).
The classes CT1CamConfig and CT1TimeStamp inherit from TObject,
CT1RunInfo inherits from CT1CamConfig and CT1Event from CT1TimeStamp.
The dictionary CT1DatDict is generated from all four .H files. 
Questions are: Why are the Streamer and ShowMembers methods generated
only for CT1TimeStamp ? and: Why does the compiler choke when compiling
CT1DatDict.C ??
I have attached the .h-files. If you need the classfiles, please let me
know.
Thanks in advance, Oliver

PS: Fons: I already had included ClassImp/ClassDef Macros. Sorry for the
big message before, I didn't realize the dictionary was that big.
========== transcript of compilation =====================

ifkpe1> make CT1Dat
g++ -O -Wall -fno-rtti -fno-exceptions -fPIC
-I/users/home/mang/linux/root/include -c CT1CamConfig.C 
g++ -O -Wall -fno-rtti -fno-exceptions -fPIC
-I/users/home/mang/linux/root/include -c CT1TimeStamp.C 
g++ -O -Wall -fno-rtti -fno-exceptions -fPIC
-I/users/home/mang/linux/root/include -c CT1RunInfo.C 
g++ -O -Wall -fno-rtti -fno-exceptions -fPIC
-I/users/home/mang/linux/root/include -c CT1Event.C 
/users/home/mang/linux/root/bin/rootcint -f CT1DatDict.C -c \
                      CT1CamConfig.H CT1TimeStamp.H \
                      CT1RunInfo.H CT1Event.H
Note: operator new() masked 1c
Note: operator delete() masked 1c
Class CT1CamConfig: Streamer() not declared
Class CT1CamConfig: ShowMembers() not declared
Class CT1RunInfo: Streamer() not declared
Class CT1RunInfo: ShowMembers() not declared
Class CT1Event: Streamer() not declared
Class CT1Event: ShowMembers() not declared
g++ -O -Wall -fno-rtti -fno-exceptions -fPIC
-I/users/home/mang/linux/root/include -c CT1DatDict.C 
CT1DatDict.C: In function `int G__CT1CamConfig_ClassDef_8_0(struct
G__value *, char *, struct G__param *, int)':
CT1DatDict.C:129: parse error before `private'
CT1DatDict.C:129: warning: control reaches end of non-void function
`G__CT1CamConfig_ClassDef_8_0(G__value *, char *, G__param *, int)'
CT1DatDict.C: In function `Version_t Class_Version()':
CT1DatDict.C:129: `libp' undeclared (first use this function)
CT1DatDict.C:129: (Each undeclared identifier is reported only once
CT1DatDict.C:129: for each function it appears in.)
CT1DatDict.C:129: warning: control reaches end of non-void function
`Class_Version()'
CT1DatDict.C: At top level:
CT1DatDict.C:129: virtual outside class declaration
CT1DatDict.C:129: non-member function `IsA()' cannot have `const' method
qualifier
CT1DatDict.C: In function `class TClass * IsA()':
CT1DatDict.C:129: confused by earlier errors, bailing out
make: *** [CT1DatDict.o] Error 1
ifkpe1> 
============= end transcript =======================================
--
Oliver Mang
Institut fuer Experimentelle und Angewandte Physik, CAU Kiel
Phone: ++49/431/880-2482	E-Mail: mang@ifkhep.uni-kiel.de
---------------------------------------------------------------
"The future is not what it used to be"

/********************************************************************
* CT1DatDict.h
********************************************************************/
#ifdef __CINT__
#error CT1DatDict.h/C is only for compilation. Abort cint.
#endif
#include <stddef.h>
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <string.h>
extern "C" {
#define G__ANSIHEADER
#include "G__ci.h"
extern void G__cpp_setup_tagtableCT1DatDict();
extern void G__cpp_setup_inheritanceCT1DatDict();
extern void G__cpp_setup_typetableCT1DatDict();
extern void G__cpp_setup_memvarCT1DatDict();
extern void G__cpp_setup_globalCT1DatDict();
extern void G__cpp_setup_memfuncCT1DatDict();
extern void G__cpp_setup_funcCT1DatDict();
extern void G__set_cpp_environmentCT1DatDict();
}


#include "TROOT.h"
#include "TMemberInspector.h"
#include "CT1CamConfig.H"
#include "CT1TimeStamp.H"
#include "CT1RunInfo.H"
#include "CT1Event.H"

#ifndef G__MEMFUNCBODY
#endif

extern G__linked_taginfo G__CT1DatDictLN_TClass;
extern G__linked_taginfo G__CT1DatDictLN_TObject;
extern G__linked_taginfo G__CT1DatDictLN_CT1CamConfig;
extern G__linked_taginfo G__CT1DatDictLN_CT1TimeStamp;
extern G__linked_taginfo G__CT1DatDictLN_CT1RunInfo;
extern G__linked_taginfo G__CT1DatDictLN_CT1Event;


#ifndef _CT1CAMCONFIG_H_
#define _CT1CAMCONFIG_H_

#include "TObject.h"

class CT1CamConfig:public TObject
{
private:
  UShort_t numpix;
  UShort_t se1zero;
  UShort_t se2zero;
  UShort_t nummupix;
  
public:
  CT1CamConfig();
//   CT1CamConfig(UShort_t se1z, UShort_t se2z, UShort_t npix=127, 
// 	       UShort_t nmpix=0);
  ~CT1CamConfig();
  
  UShort_t GetNumPix();
  void     GetZeroPos(UShort_t *se1, UShort_t *se2);
  UShort_t GetNumMuPix();
  void     SetNumPix(UShort_t npix);
  void     SetZeroPos(UShort_t se1, UShort_t se2);
  void     SetNumMuPix(UShort_t mupix);
  
  ClassDef(CT1CamConfig,1);
};

#endif // _CT1CAMCONFIG_H_


#ifndef _CT1TIMESTAMP_H_
#define _CT1TIMESTAMP_H_

#include "TObject.h"

const Int_t SecPerDay = 86400;

class CT1TimeStamp:public TObject
{
private:
  Double_t jd;
  Int_t    mjd;
  ULong_t  secsincemidnight;
  ULong_t  microsecs;
  
private:
  void TimetoJD();
  void JDtoTime();

public:
  CT1TimeStamp();
  ~CT1TimeStamp();

  void    SetTime(Int_t m, ULong_t sec, ULong_t usec);
  void    SetTime(Double_t j, ULong_t sec, ULong_t usec);
  void    SetMJD(Int_t m);
  void    SetJD(Double_t j);
  void    SetSecs(ULong_t sec);
  void    SetUSecs(ULong_t usec);
  Double_t GetJD();
  Int_t    GetMJD();
  ULong_t  GetSecs();
  ULong_t  GetUSecs();

  ClassDef(CT1TimeStamp,1)
};

#endif //_CT1TIMESTAMP_H_


#ifndef _CT1RUNINFO_H_
#define _CT1RUNINFO_H_

#include "CT1CamConfig.H"

class CT1RunInfo:public CT1CamConfig //:public RA, public Dec
{
private:
  UChar_t  telescope;
  UInt_t   runnum;
  UInt_t   numevents;
  Float_t ra;      // in hours
  Float_t dec;     // in degree
  UShort_t obstime; // in minutes
  Char_t  on_off;  // 1=on, 0=off
  Float_t mean_za; // mean zenith angle

public:
  CT1RunInfo();
  CT1RunInfo(UChar_t tel, UInt_t run, UInt_t numevt);
  ~CT1RunInfo();
  
  UChar_t  GetTelescope();
  UInt_t   GetRunNumber();
  UInt_t   GetNumEvents();
  void    GetCoords(Float_t *rightascension, Float_t *declination);
  UShort_t GetObservTime();
  Char_t  GetObservMode();
  Float_t GetMeanZA();

  void SetTelescope(UChar_t tel);
  void SetRunNumber(UInt_t run);
  void SetNumEvents(UInt_t num);
  void SetCoords(Float_t rightascension, Float_t declination);
  void SetObservTime(UShort_t minutes);
  void SetObservMode(Char_t on_off_flag);
  void SetObservMode(char *mode);
  void SetMeanZA(Float_t za);

  ClassDef(CT1RunInfo,1);
};

#endif // _CT1RUNINFO_H_


#ifndef _CT1EVENT_H_
#define _CT1EVENT_H_

#include "CT1TimeStamp.H"

class CT1Event:public CT1TimeStamp
{
private:
  UInt_t   runnum;
  UInt_t   eventnum;
  Short_t numadcpix;
  Short_t numtdcpix;
  UShort_t se1should;
  UShort_t se1is;
  UShort_t se2should;
  UShort_t se2is;
  Float_t hourangle; // in hours
  Float_t pointcorr1, pointcorr2;
  Float_t trigrate; // current trigger rate in Hz

public:
  CT1Event();
  CT1Event(UInt_t run, UInt_t evt);
  ~CT1Event();
  
  UInt_t   GetRunNumber();
  UInt_t   GetEventNumber();
  Short_t GetNumADCPix();
  Short_t GetNumTDCPix();
  void    GetSE1(UShort_t *should, UShort_t *is);
  void    GetSE2(UShort_t *should, UShort_t *is);
  Float_t GetHourAngle();
  void    GetPointCorr(Float_t *pc1, Float_t *pc2);
  Float_t GetTriggerRate();

  void SetRunNumber(UInt_t run);
  void SetEventNumber(UInt_t evt);
  void SetNumADCPix(Short_t numadcpix);
  void SetNumTDCPix(Short_t numtdcpix);
  void SetSE1(UShort_t should, UShort_t is);
  void SetSE2(UShort_t should, UShort_t is);
  void SetHourAngle(Float_t ha);
  void SetPointCorr(Float_t pc1, Float_t pc2);
  void SetTriggerRate(Float_t rate);

  ClassDef(CT1Event,1);
};

#endif //_CT1EVENT_H_



This archive was generated by hypermail 2b29 : Tue Jan 04 2000 - 00:43:36 MET