Re: [ROOT] location of the ClassDef

From: Vincent ROBERFROID (roberfroid@fynu.ucl.ac.be)
Date: Thu Oct 30 2003 - 13:41:43 MET


Try this :

#ifdef HAVE_ROOT
   ClassDef(PDFSet,1)
};
#else
};
#endif

Vincent

On Thursday 30 October 2003 11:09, Jiri Masik wrote:
> Hi,
>
> I have written an interface to the pdflib library. While Root is not
> necessary for its function I'd like to extend it by some features if
> Root is available on a given system. So I have the following lines
>
> class PDFSet
> #ifdef HAVE_ROOT
>
>   : public TObject
>
> #endif
> {
>
> public:
>   PDFSet();           //keep the currently set PDF
>   PDFSet(Int_t Type, Int_t Group, Int_t Set); //set PDF
>
>   ~PDFSet();
> private:
>   UShort_t fType;        // PDF type
>   UShort_t fGroup;       // PDF group
>   UShort_t fSet;         // PDF set
>
> #ifdef HAVE_ROOT
>   ClassDef(PDFSet,1)
> #endif
> };
>
> It probably fails due to the limitation on the position of the
> ClassDef macro which has to be on the last line before };. If it is
> surrounded by #ifdef/#endif there is an unresolved reference
> PDFSet::ShowMembers(TMemberInspector&, char*) whenever I attempt to
> load the library into Root. Is there a way around this?
>
> thanks
>
> Jiri



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