[ROOT] Peristent C-struct data-member ?

From: Valeri Fine (fine@bnl.gov)
Date: Fri Nov 30 2001 - 22:52:54 MET


Hello Rene, 
Is it possible to have a C-struct as a persistent data-member

I was asked to provide a ROOT I/O for some class defined as follows:

//-----------------------
struct Identifier { short m_id[4]; };

struct LArSignalChannelID {  Identifier m_cellID; };

class LArRawCell;
class LArRawCellBase;

class LArRawCellRoot : public TObject 
{
  private:
   LArSignalChannelID m_channelID;
   double m_energy;
   double m_time;
   double m_quality; 
  public:  
   LArRawCellRoot(){};
   LArRawCellRoot(const LArRawCellBase& aLArRawCellBase);
   LArRawCell *createObj();
  ClassDef(LArRawCellRoot,1) // Persistent class for LArRawCell
};
//-----------------------

And got from Rootcint:

*** Datamember LArRawCellRoot::m_channelID: object has no Streamer() method (need manual intervention)

Is it difficult to take C-struct in account automatically ? 
Of course one doesn't want any "stand-alone"  persistency for "LArSignalChannelID"

  Thank you, 
                                  Valeri
-----
Dr.Valeri Fine
STAR/US Atlas                                    E-mail: fine@bnl.gov
Brookhaven National Lab                Phone: +1 631 344 7806
Upton, NY 11973-5000                       FAX:     +1 631 344 4206
USA



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