20 #include <TBufferXML.h>
29 #include <TProfile2D.h>
33 #include <AIDA/IHistogram1D.h>
34 #include <AIDA/IHistogram2D.h>
35 #include <AIDA/IHistogram3D.h>
36 #include <AIDA/IProfile1D.h>
37 #include <AIDA/IProfile2D.h>
54 template <
typename TYPE>
60 TYPE* histo = ( obj ?
dynamic_cast<TYPE*
>( obj.get() ) :
nullptr );
77 return stream << TBufferXML::ConvertToXML( &histo );
86 return stream << TBufferXML::ConvertToXML( &histo );
95 return stream << TBufferXML::ConvertToXML( &histo );
104 return stream << TBufferXML::ConvertToXML( &histo );
113 return stream << TBufferXML::ConvertToXML( &histo );
122 return stream << TBufferXML::ConvertToXML( &histo );
131 return stream << TBufferXML::ConvertToXML( &histo );
140 return stream << TBufferXML::ConvertToXML( &histo );
204 auto histo = _Xml<TH1D>( input );
207 histo->Copy( result );
222 auto histo = _Xml<TH2D>( input );
225 histo->Copy( result );
240 auto histo = _Xml<TH3D>( input );
243 histo->Copy( result );
258 auto histo = _Xml<TH1F>( input );
261 histo->Copy( result );
276 auto histo = _Xml<TH2F>( input );
279 histo->Copy( result );
294 auto histo = _Xml<TH3F>( input );
297 histo->Copy( result );
312 auto histo = _Xml<TProfile>( input );
315 histo->Copy( result );
330 auto histo = _Xml<TProfile2D>( input );
333 histo->Copy( result );
346 if ( result ) {
return fromXml( *result, input ); }
348 auto histo = _Xml<TH1D>( input );
351 result = histo.release();
363 if ( result ) {
return fromXml( *result, input ); }
365 auto histo = _Xml<TH2D>( input );
368 result = histo.release();
380 if ( result ) {
return fromXml( *result, input ); }
382 auto histo = _Xml<TH3D>( input );
385 result = histo.release();
398 if ( result ) {
return fromXml( *result, input ); }
400 auto histo = _Xml<TProfile>( input );
403 result = histo.release();
415 if ( result ) {
return fromXml( *result, input ); }
417 auto histo = _Xml<TProfile2D>( input );
420 result = histo.release();