Diffpack Documentation


Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Search  

MultipleReporter.h

Go to the documentation of this file.
00001 
00005 class MultipleReporter : public HandleId
00006 
00007 {
00008 protected:
00009 
00010   String filename;
00011   int max_char_pr_summary_line;
00012   bool open_files;
00013   String purpose;
00014 
00015 public:
00016 
00017   Handle(Reporter) full_latex, full_ascii, full_html;
00018   Handle(Reporter) sum_latex, sum_ascii, sum_html;
00019   Os sum_data;  
00020 
00021   MultipleReporter ();
00022  ~MultipleReporter ();
00023 
00024   virtual bool ok () const;
00025 
00026   virtual void open ();  
00027   virtual void open (const String& filename);
00028 
00029   
00030 
00031   
00032   virtual MultipleReporter& header (const String& title, const String& author,
00033                                     bool fullpage = true,
00034                                     bool singlefile = true,
00035                                     const char* purpose = NULL);
00036   virtual MultipleReporter& trailer     ();
00037   virtual String    getSectionRef ();
00038 
00039   virtual MultipleReporter& section        (const String& txt);
00040   virtual MultipleReporter& subsection     (const String& txt);
00041   virtual MultipleReporter& section        (const String& txt, 
00042                                             const String& label);
00043   virtual MultipleReporter& subsection     (const String& txt, 
00044                                             const String& label);
00045   virtual MultipleReporter& subsubsection  (const String& txt);
00046   virtual MultipleReporter& subsubsection  (const String& txt, 
00047                                             const String& label);
00048   virtual MultipleReporter& multipleLoopSection (int run_no, 
00049                                                  const char* heading=NULL);
00050   virtual MultipleReporter& multipleLoopSection (int run_no, MenuSystem& menu,
00051                                                  const char* heading=NULL);
00052 
00053   virtual MultipleReporter& pagebreak   ();
00054   virtual MultipleReporter& linebreak   ();
00055   virtual MultipleReporter& eject       (int n = 1);
00056   virtual MultipleReporter& drawline    ();
00057   virtual MultipleReporter& putLabel    (const String& label);
00058   virtual MultipleReporter& putReference(const String& label);
00059   virtual MultipleReporter& putReference(const String& label,
00060                                  const String& document);
00061   virtual MultipleReporter& flush       ();
00062 
00063   virtual MultipleReporter& beginGroup (TextStyle style);
00064   virtual MultipleReporter& endGroup   ();
00065   virtual         String    getGroup   (const String& txt, TextStyle style);
00066 
00067       
00068   virtual         String cellpad (const String& s);
00069 
00070       
00071   virtual         String adaptString (const String& txt);
00072 
00073       
00074   virtual MultipleReporter& insert      (const String& txt);
00075   virtual MultipleReporter& put         (const String& txt);
00076   virtual MultipleReporter& putmathline (const String& txt);
00077   virtual MultipleReporter& centerline  (const String& txt);
00078 
00079   virtual MultipleReporter& insertDocument (const String& basename);
00080   virtual MultipleReporter& insertVerbatim (const String& file);
00081 
00082       
00083   virtual MultipleReporter& put (ArrayGenSimple(String)& tb);
00084   virtual MultipleReporter& put (ArrayGenSimple(real)& tb);
00085   virtual MultipleReporter& put (ArrayGenSimple(real)& tb,
00086                          const String& cell_format);
00087   virtual MultipleReporter& put (ArrayGenSimple(real)& tb,
00088                          ArrayGenSimple(String)& cell_format);
00089       
00090   virtual MultipleReporter& beginCenter ();
00091   virtual MultipleReporter& endCenter   ();
00092   virtual MultipleReporter& beginTabular  (int ncols, 
00093                                            const String& col_format);
00094   virtual MultipleReporter& endTabular    ();
00095   virtual MultipleReporter& beginTable  (int ncols, const String& col_format);
00096   virtual MultipleReporter& endTable    (const String& caption, 
00097                                          const String& label);
00098   virtual MultipleReporter& beginItemize   ();
00099   virtual MultipleReporter& endItemize     ();
00100   virtual MultipleReporter& beginEnumerate ();
00101   virtual MultipleReporter& endEnumerate   ();
00102   virtual MultipleReporter& beginFigure    (const String& psfilename, 
00103                                             real cmWidth = 10.0);
00104   virtual MultipleReporter& endFigure      (const String& caption, 
00105                                             const String& label);
00106 
00107   virtual MultipleReporter& beginDispmath ();
00108   virtual MultipleReporter& endDispmath   ();
00109 
00110   virtual         String    makeLabelRef  (const String& label);
00111   virtual         String    getCurrPlotDir ();
00112 
00113       
00114 
00115   virtual MultipleReporter& figure (const String& psfilename, 
00116                                     const String& caption,
00117                                     const String& label, real cmWidth = 10.0);
00118   virtual MultipleReporter& figure (const Strings& psfilename,
00119                                     const Strings& caption, 
00120                                     const String&  common_caption,
00121                                     const Strings& label, real cmWidth = 10.0);
00122   virtual MultipleReporter& setFigureCollectMode (bool mode);
00123   virtual MultipleReporter& dumpMultipleFigures ();
00124   virtual MultipleReporter& dumpPlotCmd (const StringList& command);
00125 
00126   virtual MultipleReporter& displaymath (const String& txt);
00127 
00128   virtual         void      specialTextASCII (const String& txt);
00129   virtual         void      specialTextLaTeX (const String& txt);
00130   virtual         void      specialTextHTML  (const String& txt);
00131 
00132       
00133 
00134   virtual         void process (bool postscript = true);
00135   virtual         void print   (bool postscript = true);
00136   virtual         void preview (bool postscript = true);
00137 
00138   
00139 
00140 protected:
00141 
00142   
00143   
00144   bool figure_collect_mode;
00145   StringList psfilename_list, caption_list, label_list;
00146   real max_cmWidth;
00147   int psfilename_counter;
00148 
00149   
00150 
00151   ArrayGenSimple(String) summary_page;
00152   int i_summary_column;
00153   Strings summary_heading;
00154 
00155 public:
00156 
00157   virtual void setSummaryTableLineLength (int max_chars);
00158   virtual void putSummaryTable (ArrayGenSimple(String)& table);
00159   virtual void putSummaryHeading
00160     (const String& title, const String& author, const Strings& headings,
00161      bool fullpage = true, bool singlefile = true);
00162   virtual void putSummary4oneSim (const Strings& results, int icomb);
00163   virtual void endSummary ();
00164 
00165   COPY_CONSTRUCTOR(MultipleReporter)
00166 };
00167 
00168 

Copyright © 2003 inuTech GmbH. All rights reserved.