| # Gaudi Framework, version v21r9 |

Home |  | Generated: 3 May 2010

# AlgorithmHistory.h File Reference

`#include "GaudiKernel/HistoryObj.h"`
`#include <iosfwd>`
`#include <string>`
`#include <typeinfo>`
`#include <vector>`

Include dependency graph for AlgorithmHistory.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

## Classes
class | AlgorithmHistory
| AlgorithmHistory class definition. More...
## Functions
GAUDI_API std::ostream & | operator<< (std::ostream &lhs, const AlgorithmHistory &rhs)

## Function Documentation

GAUDI_API std::ostream& operator<< | ( | std::ostream & | lhs,
|  | const AlgorithmHistory & | rhs |
| ) |  |  |

Definition at line 89 of file AlgorithmHistory.cpp.

    00089                                                                {
    00090   lhs << "Type: " << rhs.algorithm_type() << endl;
    00091   lhs << "Name: " << rhs.algorithm_name() << endl;
    00092   lhs << "Version: " << rhs.algorithm_version() << endl;
    00093   // Properties.
    00094   lhs << "Properties: [" << endl;;
    00095   for ( AlgorithmHistory::PropertyList::const_iterator
    00096         ipprop=rhs.properties().begin();
    00097         ipprop!=rhs.properties().end(); ++ipprop ) {
    00098     const Property& prop = **ipprop;
    00099     prop.fillStream(lhs);
    00100     lhs << endl;
    00101     //    lhs << "  " << prop.type() << " " << prop.name() << endl;
    00102 //      << " == "
    00103 //              << prop.fillStream(lhs) << endl;
    00104   }
    00105   lhs << "]" << endl;
    00106   // Subalgorithms.
    00107   if ( rhs.subalgorithm_histories().size() == 0 ) {
    00108     lhs << "No subalgorithms.";
    00109   } else {
    00110     lhs << "Subalgorithms: {" << endl;
    00111     for ( AlgorithmHistory::HistoryList::const_iterator
    00112           iphist=rhs.subalgorithm_histories().begin();
    00113           iphist!=rhs.subalgorithm_histories().end(); ++iphist ) {
    00114       if ( iphist==rhs.subalgorithm_histories().begin() ) {
    00115         lhs << "----------" << endl;
    00116       }
    00117       lhs << **iphist << endl;
    00118       lhs << "----------" << endl;
    00119     }
    00120     lhs << "}";
    00121   }
    00122   return lhs;
    00123 }