| Last change
 on this file since 1ae9aa was             47cee7, checked in by Frederik Heber <heber@…>, 12 years ago | 
        
          | 
Writing out energy file with value and contribution per index set
 placed in printReceivedShortResultsPerIndex().
added writeIndexedTable which writes per indexset not per level.
HeaderPrinter is not initialized with some string anymore.
ValuePrinter does not write the level anymore.
these are now done in write(Indexed)Table.
TESTFIX: Added BondFragment_IndexedEnergy.dat diff to regression tests.
 | 
        
          | 
              
Property                 mode
 set to                 100644 | 
        
          | File size:
            1.1 KB | 
      
      
| Rev | Line |  | 
|---|
| [20b3df] | 1 | /* | 
|---|
|  | 2 | * HeaderPrinter.hpp | 
|---|
|  | 3 | * | 
|---|
|  | 4 | *  Created on: Aug 3, 2012 | 
|---|
|  | 5 | *      Author: heber | 
|---|
|  | 6 | */ | 
|---|
|  | 7 |  | 
|---|
|  | 8 | #ifndef HEADERPRINTER_HPP_ | 
|---|
|  | 9 | #define HEADERPRINTER_HPP_ | 
|---|
|  | 10 |  | 
|---|
|  | 11 |  | 
|---|
|  | 12 | // include config.h | 
|---|
|  | 13 | #ifdef HAVE_CONFIG_H | 
|---|
|  | 14 | #include <config.h> | 
|---|
|  | 15 | #endif | 
|---|
|  | 16 |  | 
|---|
|  | 17 | #include <boost/fusion/sequence.hpp> | 
|---|
|  | 18 | #include <string> | 
|---|
|  | 19 |  | 
|---|
|  | 20 | #include "Fragmentation/Summation/printKeyNames.hpp" | 
|---|
|  | 21 |  | 
|---|
|  | 22 | /** HeaderPrinter prints the header for a table of values each associated to a | 
|---|
|  | 23 | * specific boost::fusion-style key \a MapKey. | 
|---|
|  | 24 | * | 
|---|
|  | 25 | * We require the printName() function | 
|---|
|  | 26 | * specialized for each \a MapKey to print the name for this value. | 
|---|
|  | 27 | * | 
|---|
|  | 28 | * This is made such that we may use boost::mpl::for_each to quickly create | 
|---|
|  | 29 | * the header line if specialized printName()s and a boost::fusion::vector | 
|---|
|  | 30 | * containing all these keys is present | 
|---|
|  | 31 | */ | 
|---|
|  | 32 | struct HeaderPrinter { | 
|---|
| [47cee7] | 33 | HeaderPrinter(const std::string _suffix = std::string("")) : | 
|---|
|  | 34 | header(""), | 
|---|
|  | 35 | suffix(_suffix) | 
|---|
| [20b3df] | 36 | {} | 
|---|
|  | 37 |  | 
|---|
|  | 38 | template <typename MapKey> | 
|---|
|  | 39 | void operator()(MapKey &) { | 
|---|
| [47cee7] | 40 | header += std::string("\t") + printKeyNames::printName<MapKey>() + suffix; | 
|---|
| [20b3df] | 41 | } | 
|---|
|  | 42 |  | 
|---|
|  | 43 | const std::string &get() const { | 
|---|
|  | 44 | return header; | 
|---|
|  | 45 | } | 
|---|
|  | 46 |  | 
|---|
|  | 47 | private: | 
|---|
|  | 48 | std::string header; | 
|---|
| [47cee7] | 49 | std::string suffix; | 
|---|
| [20b3df] | 50 | }; | 
|---|
|  | 51 |  | 
|---|
|  | 52 |  | 
|---|
|  | 53 | #endif /* HEADERPRINTER_HPP_ */ | 
|---|
       
      
  Note:
 See   
TracBrowser
 for help on using the repository browser.