Jiri Masik wrote:
>
> 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 };.
Although I think I remember it's stated that way somewhere this is not
entirely true. I guess it's just an advice to avoid unnecessary hassle
;-)
> 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?
Do you have the corresponding ClassImp in the .C file?
Cheers,
Ingo
--
"What're quantum mechanics?"
"I don't know. People who repair quantums I suppose."
--Rincewind, Terry Pratchett "Eric"
This archive was generated by hypermail 2b29 : Thu Jan 01 2004 - 17:50:16 MET