Hi, We have a problem with compiling dictionary for the class like the following: MyClass.h: ------------ #ifndef MYCLASS_H #define MYCLASS_H #include <map> #include <TObject.h> class MyClass : public TObject { public: typedef std::pair<Int_t, Int_t> MyPair; typedef std::map<MyPair, Double_t> MyMap; MyClass(); virtual ~MyClass(); private: // data members MyMap fMap; // ClassDef(MyClass,1) //Motif }; #endif //MyClass_H We declare it in LinkDef in a standard way as: #pragma link C++ class MyClass+; The compiler complains for some "unknown" variable: Compiling TtestCint.cxx ... src/TtestCint.cxx: In function `void R__MyClass_fMap(TBuffer &, void *, int)': src/TtestCint.cxx:35: `unknown' undeclared (first use this function) src/TtestCint.cxx:35: (Each undeclared identifier is reported only once src/TtestCint.cxx:35: for each function it appears in.) src/TtestCint.cxx:35: parse error before `;' which really appears in the generated dictionary. Is there some work around for this (besides implementing the pair class ourselves)? Best regards, Ivana P.S. We have Root version 3.03/03. ============================================================== e-mail: Ivana.Hrivnacova@cern.ch address: Institut Physique Nucleaire, 91406 Orsay, France phone: (33) 01 69 15 65 94 ============================================================== #include "MyClass.h" ClassImp(MyClass) //_____________________________________________________________________________ MyClass::MyClass() : TObject() { // Constructor } //_____________________________________________________________________________ MyClass::~MyClass() { // }
This archive was generated by hypermail 2b29 : Sat Jan 04 2003 - 23:50:51 MET