LCOV - code coverage report
Current view: top level - imageanalysis/ImageAnalysis - ImageHistory.h (source / functions) Hit Total Coverage
Test: casacpp_coverage.info Lines: 1 2 50.0 %
Date: 2024-11-06 17:42:47 Functions: 1 8 12.5 %

          Line data    Source code
       1             : #ifndef IMAGEANALYSIS_IMAGEHISTORY_H
       2             : #define IMAGEANALYSIS_IMAGEHISTORY_H
       3             : 
       4             : #include <imageanalysis/ImageTypedefs.h>
       5             : 
       6             : #include <casacore/casa/namespace.h>
       7             : 
       8             : namespace casac {
       9             : 
      10             : class variant;
      11             : 
      12             : }
      13             : 
      14             : namespace casa {
      15             : 
      16             : template <class T> class ImageHistory {
      17             :     // <summary>
      18             :     // Top level interface accessing image history data.
      19             :     // </summary>
      20             : 
      21             :     // <reviewed reviewer="" date="" tests="" demos="">
      22             :     // </reviewed>
      23             : 
      24             :     // <prerequisite>
      25             :     // </prerequisite>
      26             : 
      27             :     // <etymology>
      28             :     // Image History access
      29             :     // </etymology>
      30             : 
      31             :     // <synopsis>
      32             :     // Top level interface for accessing image history.
      33             :     // </synopsis>
      34             : 
      35             : public:
      36             : 
      37             :     ImageHistory() = delete;
      38             :     
      39             :     ImageHistory(const SPIIT image);
      40             : 
      41             :     // destructor
      42           9 :     ~ImageHistory() {}
      43             : 
      44             :     // add a line to the history
      45             :     void addHistory(
      46             :         const casacore::String& origin, const casacore::String& history
      47             :     );
      48             : 
      49             :     void addHistory(
      50             :         const casacore::LogOrigin& origin, const casacore::String& history
      51             :     );
      52             :     // add multiple history lines, all which have the same origin
      53             :     void addHistory(
      54             :         const casacore::String& origin,
      55             :         const std::vector<casacore::String>& history
      56             :     );
      57             : 
      58             :     void addHistory(
      59             :         const casacore::LogOrigin& origin,
      60             :         const std::vector<casacore::String>& history
      61             :     );
      62             : 
      63             :     void addHistory(
      64             :         const casacore::String& origin, const std::vector<string>& history
      65             :     );
      66             : 
      67             :     void addHistory(
      68             :         const std::vector<std::pair<casacore::LogOrigin, casacore::String> >& history
      69             :     );
      70             : 
      71             :     void addHistory(
      72             :         const std::vector<std::pair<casacore::String, casacore::String>>& history
      73             :     );
      74             : 
      75             :     // erase all messages. Cannot be undone!
      76             :     void clear();
      77             : 
      78             :     std::vector<casacore::String> get(casacore::Bool list) const;
      79             :     std::vector<string> getAsStdStrings(casacore::Bool list) const;
      80             : 
      81             :     // return a vector<String> containing a formatted application 
      82             :     // summary. Nothing is written to them image that is useful for
      83             :     // history writing.
      84             :     static std::vector<std::pair<casacore::String, casacore::String>> 
      85             :     getApplicationHistory(
      86             :         const casacore::LogOrigin& origin, const casacore::String& taskname,
      87             :         const vector<casacore::String>& paramNames,
      88             :         const vector<casac::variant>& paramValues,
      89             :         const casacore::String& imageName
      90             :     );
      91             : 
      92             :     // <group>
      93             :     //Append the specified image's history to this image's history
      94             :     template <class U> void append(SPCIIU image);
      95             : 
      96             :     template <class U> void append(SPIIU image);
      97             :     // </group>
      98             : 
      99           0 :     casacore::String getClass() const { const static casacore::String s = "ImageHistory"; return s; }
     100             : 
     101             :     casacore::LogIO& getLogSink();
     102             : 
     103             : private:
     104             : 
     105             :     const SPIIT _image;
     106             : 
     107             : };
     108             : }
     109             : 
     110             : #ifndef AIPS_NO_TEMPLATE_SRC
     111             : #include <imageanalysis/ImageAnalysis/ImageHistory.tcc>
     112             : #endif
     113             : 
     114             : #endif

Generated by: LCOV version 1.16