SVN trunk of 29123 is broken by tmva/src/MethodVariable.cxx

Hello,

I just updated to svn trunk of 29123, but the make is broken by tmva/src/MethodVariable.cxx. Would you be so kind to fix it?

Thanks a lot.

[quote]bin/rmkdepend -R -ftmva/src/MethodVariable.d -Y -w 1000 – -pipe -m64 -Wall -W -Woverloaded-virtual -fPIC -Iinclude -pthread -D__cplusplus – tmva/src/MethodVariable.cxx
g++ -O2 -pipe -m64 -Wall -W -Woverloaded-virtual -fPIC -Iinclude -pthread -o tmva/src/MethodVariable.o -c tmva/src/MethodVariable.cxx
In file included from tmva/src/MethodVariable.cxx:36:
include/TMVA/MethodBase.h:140: warning: ‘virtual Double_t TMVA::MethodBase::GetMvaValue(Double_t*)’ was hidden
include/TMVA/MethodVariable.h:74: warning: by ‘Double_t TMVA::MethodVariable::GetMvaValue()’
tmva/src/MethodVariable.cxx: In constructor ‘TMVA::MethodVariable::MethodVariable(const TString&, const TString&, TMVA::DataSet&, const TString&, TDirectory*)’:
tmva/src/MethodVariable.cxx:46: error: no matching function for call to ‘TMVA::MethodBase::MethodBase(const TString&, const TString&, TMVA::DataSet&, const TString&, TDirectory*&)’
include/TMVA/MethodBase.h:97: note: candidates are: TMVA::MethodBase::MethodBase(TMVA::Types::EMVA, TMVA::DataSetInfo&, const TString&, TDirectory*)
include/TMVA/MethodBase.h:90: note: TMVA::MethodBase::MethodBase(const TString&, TMVA::Types::EMVA, const TString&, TMVA::DataSetInfo&, const TString&, TDirectory*)
include/TMVA/MethodBase.h:78: note: TMVA::MethodBase::MethodBase(const TMVA::MethodBase&)
tmva/src/MethodVariable.cxx:53: error: ‘SetMethodName’ was not declared in this scope
tmva/src/MethodVariable.cxx:54: error: ‘SetMethodType’ was not declared in this scope
include/TMVA/Configurable.h:135: error: ‘TMVA::MsgLogger* TMVA::Configurable::fLogger’ is private
tmva/src/MethodVariable.cxx:58: error: within this context
tmva/src/MethodVariable.cxx:58: error: no match for ‘operator<<’ in ‘((TMVA::MethodVariable*)this)->TMVA::MethodVariable::.TMVA::MethodBase::.TMVA::Configurable::fLogger << kVERBOSE’
include/TMVA/Event.h:51: note: candidates are: std::ostream& TMVA::operator<<(std::ostream&, const TMVA::Event&)
include/TMVA/Event.h:52: note: std::ostream& TMVA::operator<<(std::ostream&, const TMVA::Event*)
include/TArrayI.h:75: note: TBuffer& operator<<(TBuffer&, const TArrayI*)
include/TArrayD.h:75: note: TBuffer& operator<<(TBuffer&, const TArrayD*)
include/TArray.h:77: note: TBuffer& operator<<(TBuffer&, const TArray*)
include/TString.h:397: note: std::ostream& operator<<(std::ostream&, const TString&)
include/TBuffer.h:370: note: TBuffer& operator<<(TBuffer&, const TObject*)
include/TBuffer.h:330: note: TBuffer& operator<<(TBuffer&, const TString&)
include/TBuffer.h:329: note: TBuffer& operator<<(TBuffer&, const Char_t*)
include/TBuffer.h:328: note: TBuffer& operator<<(TBuffer&, Double_t)
include/TBuffer.h:327: note: TBuffer& operator<<(TBuffer&, Float_t)
include/TBuffer.h:326: note: TBuffer& operator<<(TBuffer&, ULong64_t)
include/TBuffer.h:325: note: TBuffer& operator<<(TBuffer&, Long64_t)
include/TBuffer.h:324: note: TBuffer& operator<<(TBuffer&, ULong_t)
include/TBuffer.h:323: note: TBuffer& operator<<(TBuffer&, Long_t)
include/TBuffer.h:322: note: TBuffer& operator<<(TBuffer&, UInt_t)
include/TBuffer.h:321: note: TBuffer& operator<<(TBuffer&, Int_t)
include/TBuffer.h:320: note: TBuffer& operator<<(TBuffer&, UShort_t)
include/TBuffer.h:319: note: TBuffer& operator<<(TBuffer&, Short_t)
include/TBuffer.h:318: note: TBuffer& operator<<(TBuffer&, UChar_t)
include/TBuffer.h:317: note: TBuffer& operator<<(TBuffer&, Char_t)
include/TBuffer.h:316: note: TBuffer& operator<<(TBuffer&, Bool_t)
tmva/src/MethodVariable.cxx:61: error: request for member ‘GetTrainingTree’ in ‘((TMVA::MethodVariable*)this)->TMVA::MethodVariable::.TMVA::MethodBase::Data()’, which is of non-class type ‘TMVA::DataSet*’
tmva/src/MethodVariable.cxx:62: error: request for member ‘GetTrainingTree’ in ‘((TMVA::MethodVariable*)this)->TMVA::MethodVariable::.TMVA::MethodBase::Data()’, which is of non-class type ‘TMVA::DataSet*’
include/TMVA/Configurable.h:135: error: ‘TMVA::MsgLogger* TMVA::Configurable::fLogger’ is private
tmva/src/MethodVariable.cxx:63: error: within this context
tmva/src/MethodVariable.cxx:63: error: no match for ‘operator<<’ in ‘((TMVA::MethodVariable*)this)->TMVA::MethodVariable::.TMVA::MethodBase::.TMVA::Configurable::fLogger << kFATAL’
include/TMVA/Event.h:51: note: candidates are: std::ostream& TMVA::operator<<(std::ostream&, const TMVA::Event&)
include/TMVA/Event.h:52: note: std::ostream& TMVA::operator<<(std::ostream&, const TMVA::Event*)
include/TArrayI.h:75: note: TBuffer& operator<<(TBuffer&, const TArrayI*)
include/TArrayD.h:75: note: TBuffer& operator<<(TBuffer&, const TArrayD*)
include/TArray.h:77: note: TBuffer& operator<<(TBuffer&, const TArray*)
include/TString.h:397: note: std::ostream& operator<<(std::ostream&, const TString&)
include/TBuffer.h:370: note: TBuffer& operator<<(TBuffer&, const TObject*)
include/TBuffer.h:330: note: TBuffer& operator<<(TBuffer&, const TString&)
include/TBuffer.h:329: note: TBuffer& operator<<(TBuffer&, const Char_t*)
include/TBuffer.h:328: note: TBuffer& operator<<(TBuffer&, Double_t)
include/TBuffer.h:327: note: TBuffer& operator<<(TBuffer&, Float_t)
include/TBuffer.h:326: note: TBuffer& operator<<(TBuffer&, ULong64_t)
include/TBuffer.h:325: note: TBuffer& operator<<(TBuffer&, Long64_t)
include/TBuffer.h:324: note: TBuffer& operator<<(TBuffer&, ULong_t)
include/TBuffer.h:323: note: TBuffer& operator<<(TBuffer&, Long_t)
include/TBuffer.h:322: note: TBuffer& operator<<(TBuffer&, UInt_t)
include/TBuffer.h:321: note: TBuffer& operator<<(TBuffer&, Int_t)
include/TBuffer.h:320: note: TBuffer& operator<<(TBuffer&, UShort_t)
include/TBuffer.h:319: note: TBuffer& operator<<(TBuffer&, Short_t)
include/TBuffer.h:318: note: TBuffer& operator<<(TBuffer&, UChar_t)
include/TBuffer.h:317: note: TBuffer& operator<<(TBuffer&, Char_t)
include/TBuffer.h:316: note: TBuffer& operator<<(TBuffer&, Bool_t)
include/TMVA/Configurable.h:135: error: ‘TMVA::MsgLogger* TMVA::Configurable::fLogger’ is private
tmva/src/MethodVariable.cxx:68: error: within this context
tmva/src/MethodVariable.cxx:68: error: no match for ‘operator<<’ in ‘((TMVA::MethodVariable*)this)->TMVA::MethodVariable::.TMVA::MethodBase::.TMVA::Configurable::fLogger << kVERBOSE’
include/TMVA/Event.h:51: note: candidates are: std::ostream& TMVA::operator<<(std::ostream&, const TMVA::Event&)
include/TMVA/Event.h:52: note: std::ostream& TMVA::operator<<(std::ostream&, const TMVA::Event*)
include/TArrayI.h:75: note: TBuffer& operator<<(TBuffer&, const TArrayI*)
include/TArrayD.h:75: note: TBuffer& operator<<(TBuffer&, const TArrayD*)
include/TArray.h:77: note: TBuffer& operator<<(TBuffer&, const TArray*)
include/TString.h:397: note: std::ostream& operator<<(std::ostream&, const TString&)
include/TBuffer.h:370: note: TBuffer& operator<<(TBuffer&, const TObject*)
include/TBuffer.h:330: note: TBuffer& operator<<(TBuffer&, const TString&)
include/TBuffer.h:329: note: TBuffer& operator<<(TBuffer&, const Char_t*)
include/TBuffer.h:328: note: TBuffer& operator<<(TBuffer&, Double_t)
include/TBuffer.h:327: note: TBuffer& operator<<(TBuffer&, Float_t)
include/TBuffer.h:326: note: TBuffer& operator<<(TBuffer&, ULong64_t)
include/TBuffer.h:325: note: TBuffer& operator<<(TBuffer&, Long64_t)
include/TBuffer.h:324: note: TBuffer& operator<<(TBuffer&, ULong_t)
include/TBuffer.h:323: note: TBuffer& operator<<(TBuffer&, Long_t)
include/TBuffer.h:322: note: TBuffer& operator<<(TBuffer&, UInt_t)
include/TBuffer.h:321: note: TBuffer& operator<<(TBuffer&, Int_t)
include/TBuffer.h:320: note: TBuffer& operator<<(TBuffer&, UShort_t)
include/TBuffer.h:319: note: TBuffer& operator<<(TBuffer&, Short_t)
include/TBuffer.h:318: note: TBuffer& operator<<(TBuffer&, UChar_t)
include/TBuffer.h:317: note: TBuffer& operator<<(TBuffer&, Char_t)
include/TBuffer.h:316: note: TBuffer& operator<<(TBuffer&, Bool_t)
tmva/src/MethodVariable.cxx: In member function ‘virtual void TMVA::MethodVariable::Train()’:
tmva/src/MethodVariable.cxx:84: error: ‘CheckSanity’ was not declared in this scope
include/TMVA/Configurable.h:135: error: ‘TMVA::MsgLogger* TMVA::Configurable::fLogger’ is private
tmva/src/MethodVariable.cxx:84: error: within this context
tmva/src/MethodVariable.cxx:84: error: no match for ‘operator<<’ in ‘((TMVA::MethodVariable*)this)->TMVA::MethodVariable::.TMVA::MethodBase::.TMVA::Configurable::fLogger << kFATAL’
include/TMVA/Event.h:51: note: candidates are: std::ostream& TMVA::operator<<(std::ostream&, const TMVA::Event&)
include/TMVA/Event.h:52: note: std::ostream& TMVA::operator<<(std::ostream&, const TMVA::Event*)
include/TArrayI.h:75: note: TBuffer& operator<<(TBuffer&, const TArrayI*)
include/TArrayD.h:75: note: TBuffer& operator<<(TBuffer&, const TArrayD*)
include/TArray.h:77: note: TBuffer& operator<<(TBuffer&, const TArray*)
include/TString.h:397: note: std::ostream& operator<<(std::ostream&, const TString&)
include/TBuffer.h:370: note: TBuffer& operator<<(TBuffer&, const TObject*)
include/TBuffer.h:330: note: TBuffer& operator<<(TBuffer&, const TString&)
include/TBuffer.h:329: note: TBuffer& operator<<(TBuffer&, const Char_t*)
include/TBuffer.h:328: note: TBuffer& operator<<(TBuffer&, Double_t)
include/TBuffer.h:327: note: TBuffer& operator<<(TBuffer&, Float_t)
include/TBuffer.h:326: note: TBuffer& operator<<(TBuffer&, ULong64_t)
include/TBuffer.h:325: note: TBuffer& operator<<(TBuffer&, Long64_t)
include/TBuffer.h:324: note: TBuffer& operator<<(TBuffer&, ULong_t)
include/TBuffer.h:323: note: TBuffer& operator<<(TBuffer&, Long_t)
include/TBuffer.h:322: note: TBuffer& operator<<(TBuffer&, UInt_t)
include/TBuffer.h:321: note: TBuffer& operator<<(TBuffer&, Int_t)
include/TBuffer.h:320: note: TBuffer& operator<<(TBuffer&, UShort_t)
include/TBuffer.h:319: note: TBuffer& operator<<(TBuffer&, Short_t)
include/TBuffer.h:318: note: TBuffer& operator<<(TBuffer&, UChar_t)
include/TBuffer.h:317: note: TBuffer& operator<<(TBuffer&, Char_t)
include/TBuffer.h:316: note: TBuffer& operator<<(TBuffer&, Bool_t)
tmva/src/MethodVariable.cxx: In member function ‘Double_t TMVA::MethodVariable::GetMvaValue()’:
tmva/src/MethodVariable.cxx:91: error: ‘GetEventVal’ was not declared in this scope
include/TMVA/Configurable.h: In member function ‘virtual void TMVA::MethodVariable::GetHelpMessage() const’:
include/TMVA/Configurable.h:135: error: ‘TMVA::MsgLogger* TMVA::Configurable::fLogger’ is private
tmva/src/MethodVariable.cxx:124: error: within this context
tmva/src/MethodVariable.cxx:124: error: invalid operands of types ‘TMVA::MsgLogger*’ and ‘TMVA::MsgLogger& ()(TMVA::MsgLogger&)’ to binary ‘operator<<’
include/TMVA/Configurable.h:135: error: ‘TMVA::MsgLogger* TMVA::Configurable::fLogger’ is private
tmva/src/MethodVariable.cxx:125: error: within this context
tmva/src/MethodVariable.cxx:125: error: ‘gTools’ was not declared in this scope
include/TMVA/Configurable.h:135: error: ‘TMVA::MsgLogger* TMVA::Configurable::fLogger’ is private
tmva/src/MethodVariable.cxx:126: error: within this context
tmva/src/MethodVariable.cxx:126: error: invalid operands of types ‘TMVA::MsgLogger*’ and ‘TMVA::MsgLogger& ()(TMVA::MsgLogger&)’ to binary ‘operator<<’
include/TMVA/Configurable.h:135: error: ‘TMVA::MsgLogger* TMVA::Configurable::fLogger’ is private
tmva/src/MethodVariable.cxx:127: error: within this context
tmva/src/MethodVariable.cxx:127: error: invalid operands of types ‘TMVA::MsgLogger*’ and ‘const char [7]’ to binary ‘operator<<’
include/TMVA/Configurable.h:135: error: ‘TMVA::MsgLogger* TMVA::Configurable::fLogger’ is private
tmva/src/MethodVariable.cxx:128: error: within this context
tmva/src/MethodVariable.cxx:128: error: invalid operands of types ‘TMVA::MsgLogger*’ and ‘TMVA::MsgLogger& ()(TMVA::MsgLogger&)’ to binary ‘operator<<’
include/TMVA/Configurable.h:135: error: ‘TMVA::MsgLogger* TMVA::Configurable::fLogger’ is private
tmva/src/MethodVariable.cxx:129: error: within this context
include/TMVA/Configurable.h:135: error: ‘TMVA::MsgLogger* TMVA::Configurable::fLogger’ is private
tmva/src/MethodVariable.cxx:130: error: within this context
tmva/src/MethodVariable.cxx:130: error: invalid operands of types ‘TMVA::MsgLogger*’ and ‘TMVA::MsgLogger& ()(TMVA::MsgLogger&)’ to binary ‘operator<<’
include/TMVA/Configurable.h:135: error: ‘TMVA::MsgLogger* TMVA::Configurable::fLogger’ is private
tmva/src/MethodVariable.cxx:131: error: within this context
tmva/src/MethodVariable.cxx:131: error: invalid operands of types ‘TMVA::MsgLogger*’ and ‘const char [7]’ to binary ‘operator<<’
include/TMVA/Configurable.h:135: error: ‘TMVA::MsgLogger* TMVA::Configurable::fLogger’ is private
tmva/src/MethodVariable.cxx:132: error: within this context
tmva/src/MethodVariable.cxx:132: error: invalid operands of types ‘TMVA::MsgLogger*’ and ‘TMVA::MsgLogger& ()(TMVA::MsgLogger&)’ to binary ‘operator<<’
include/TMVA/Configurable.h:135: error: ‘TMVA::MsgLogger* TMVA::Configurable::fLogger’ is private
tmva/src/MethodVariable.cxx:133: error: within this context
include/TMVA/Configurable.h:135: error: ‘TMVA::MsgLogger* TMVA::Configurable::fLogger’ is private
tmva/src/MethodVariable.cxx:134: error: within this context
tmva/src/MethodVariable.cxx:134: error: invalid operands of types ‘TMVA::MsgLogger*’ and ‘TMVA::MsgLogger& ()(TMVA::MsgLogger&)’ to binary ‘operator<<’
include/TMVA/Configurable.h:135: error: ‘TMVA::MsgLogger* TMVA::Configurable::fLogger’ is private
tmva/src/MethodVariable.cxx:135: error: within this context
tmva/src/MethodVariable.cxx:135: error: invalid operands of types ‘TMVA::MsgLogger*’ and ‘const char [7]’ to binary ‘operator<<’
make: *** [tmva/src/MethodVariable.o] Error 1[/quote]

Yes we know. The TMVA team is working on a fix. There are many problems with the new version. You may have to wait the end of the day for a fix.

Rene

Dear Hejb,

Just in case you were not yet aware, Rene has upload a patch in SVN which fixes the compilation issue in TMVA.
You may want to give a try.

Gerri Ganis