[ROOT] Strange problem using GetterMethod

From: Thomas Bretz (tbretz@astro.uni-wuerzburg.de)
Date: Fri Aug 29 2003 - 10:41:42 MEST


Dear all,

we have a strange problem using GetterMethod. Attached you find a very 
very simple class. Compiled into our shared object, loading it into the 
interpreter, from there I do...

MImgCleanIslandsPar m;

TDataMember *mem = 
m.IsA()->GetBaseDataMember("fNumIslands")->GetDataMember("fNumIslands");

mem->GetterMethod() is NULL (should be != NULL?)
and
mem->IsPersistent() returns kTRUE (should be kFALSE?)

any ideas? Can somebody reproduce th eproblem?

I'm using root 3.05/07 on Suse 8.2 with gcc 3.2.

Best regards,
Thomas.



/* ======================================================================== *\
!
! *
! * This file is part of MARS, the MAGIC Analysis and Reconstruction
! * Software. It is distributed to you in the hope that it can be a useful
! * and timesaving tool in analysing Data of imaging Cerenkov telescopes.
! * It is distributed WITHOUT ANY WARRANTY.
! *
! * Permission to use, copy, modify and distribute this software and its
! * documentation for any purpose is hereby granted without fee,
! * provided that the above copyright notice appear in all copies and
! * that both that copyright notice and this permission notice appear
! * in supporting documentation. It is provided "as is" without express
! * or implied warranty.
! *
!
!
!   Author(s): Keiichi Mase, 8/2003 <mailto:mase@mppmu.mpg.de>
!
!   Copyright: MAGIC Software Development, 2000-2003
!
\* ======================================================================== */

#include "MImgCleanIslandsPar.h"

using namespace std;

ClassImp(MImgCleanIslandsPar);

// --------------------------------------------------------------------------
//
// Default constructor. 
//
MImgCleanIslandsPar::MImgCleanIslandsPar(const char *name, const char *title)
{
}



#ifndef MARS_MImgCleanIslandsPar
#define MARS_MImgCleanIslandsPar

#ifndef ROOT_TObject
#include <TObject.h>
#endif

class MImgCleanIslandsPar : public TObject
{
 private:
  Int_t fNumIslands;  // number of the islands

 public:
  MImgCleanIslandsPar(const char *name=NULL, const char *title=NULL);

  void  SetNumIslands(Int_t num) { fNumIslands = num; }
  Int_t GetNumIslands()    const { return fNumIslands; }

  ClassDef(MImgCleanIslandsPar, 1) // Container to hold new image parameters
}; 

#endif



This archive was generated by hypermail 2b29 : Thu Jan 01 2004 - 17:50:15 MET