when I want to add my classes to root, I run into the following problem
with structs:
Assume the following as Headerfile.h:
/////////////////////////////////////////////////
#include "TObject.h"
struct v550Map {
unsigned short CRAMintr; /* CRAMS Interrupt Register W*/
unsigned short CRAMstat; /* CRAMS Status Register RW*/
unsigned short CRAMnumch; /* Number of channels RW*/
unsigned short CRAMclear; /* CRAMS Module Clear W*/
unsigned char PADDR1[226]; /* hole R */
};
class VmeModule : public TObject
{
private:
int VmeAdress;
int VmeSize;
struct v550Map *Map; // Actual Registers
struct v550Map Dummy; // If no hardware connected
VmeModule(void){}
ClassDef(VmeModule,1)
} ;
////////////////////////////////////////////////////
The problem starts when creating the directory files:
rootcint -f vme_Cint.cxx -c testst.h LinkDef.h
Note: operator new() masked 1c
Note: operator delete() masked 1c
*** Datamember VmeModule::Dummy: object has no Streamer() method (need
manual intervention)
Sometimes I get the same for the *Map too.
I don't need Object I/O for these structs, but I can't load the .so
when Dummy or *Map is used.
If I uncomment the structs, everything is fine for the rest of the
classes.
thanks
Florian Schopper
----------------------------------------------------------------------
Florian Schopper office: Max-Plank-Institut fuer
extraterrestrische physik
Ludwig-Merk str. 3 Postfach 1603
80805 Muenchen Giessenbachstr.
phone: 49/89/3226157 Garching bei Muenchen
phone: 49/89/3299 3625
fax: 49/89/3299 3569
e-mail: fls@mpe-garching.mpg.de
http://wwwcn1.cern.ch/~fschoppe
----------------------------------------------------------------------
-----------------------------------------------------------------------