** This is part of the CTSim program
** Copyright (C) 1983-2000 Kevin Rosenberg
**
-** $Id: plotfile.h,v 1.4 2000/12/23 18:12:35 kevin Exp $
+** $Id: plotfile.h,v 1.6 2001/01/02 16:02:12 kevin Exp $
**
** This program is free software; you can redistribute it and/or modify
** it under the terms of the GNU General Public License (version 2) as
#include <iostream>
#include <vector>
#include "ctsupport.h"
-#include "plotfile.h"\r
+#include "plotfile.h"
// Plotfile structure:
// 1. Lines that begin with # are comments
// 2. ASCII file format
// 3. Header lines begin with <tags> and end with </tags>
-// 4. Valid headers\r
+// 4. Valid headers
// <plotfile ncolumns nrecords> (signifies beginning of plotfile)
-// <description> (beginning of description lines)\r
-// <ezset> (signifies beginning of ezset commands)\r
+// <description> (beginning of description lines)
+// <ezset> (signifies beginning of ezset commands)
// <columns> Beginning of data columns
// 5. Data is ASCII file format, one record per line
// Number of columns is variable and is set by ncolumns header
-\r
+
class PlotFile
private:
std::string m_strFilename;
std::string m_strDate;
- std::vector<std::string> m_vecStrDescriptions;\r
+ std::vector<std::string> m_vecStrDescriptions;
std::vector<std::string> m_vecStrEzsetCommands;
std::vector<double> m_vecCurves;
int m_iNumColumns;
void setCurveSize (int iNCurves, int iNRecords);
- void addDescription (const char* const pszDesc)\r
- { m_vecStrDescriptions.push_back (pszDesc); }\r
-\r
- void addEzsetCommand (const char* const pszCmd)\r
- { m_vecStrEzsetCommands.push_back (pszCmd); }\r
+ void addDescription (const char* const pszDesc)
+ { m_vecStrDescriptions.push_back (pszDesc); }
+
+ void addEzsetCommand (const char* const pszCmd)
+ { m_vecStrEzsetCommands.push_back (pszCmd); }
bool addColumn (int iCol, const double* const pdColumn);
- bool addColumn (int iCol, const float* const pdColumn);\r
-\r
- void getColumn (int iCol, double *pdColumnData) const;\r
-\r
+ bool addColumn (int iCol, const float* const pdColumn);
+
+ void getColumn (int iCol, double *pdColumnData) const;
+
const std::string& getDate () const
{ return m_strDate; }
int getNumRecords () const
{ return m_iNumRecords; }
-\r
- bool getMinMax (int startingCol, double& min, double& max) const;\r
-\r
- bool statistics (int startingCol, double& min, double& max, double& mean, double& mode, double& median, double &stddev) const;\r
+
+ bool getMinMax (int startingCol, double& min, double& max) const;
+
+ bool statistics (int startingCol, double& min, double& max, double& mean, double& mode, double& median, double &stddev) const;
unsigned int getNumDescriptions (void) const
{ return m_vecStrDescriptions.size(); }
const std::string& getDescription (int iDescIndex) const
{ return m_vecStrDescriptions[iDescIndex]; }
- unsigned int getNumEzsetCommands (void) const\r
- { return m_vecStrEzsetCommands.size(); }\r
-\r
- const std::string& getEzsetCommand (int iIndex) const\r
- { return m_vecStrEzsetCommands[iIndex]; }\r
-\r
+ unsigned int getNumEzsetCommands (void) const
+ { return m_vecStrEzsetCommands.size(); }
+
+ const std::string& getEzsetCommand (int iIndex) const
+ { return m_vecStrEzsetCommands[iIndex]; }
+
bool fileRead (const char* const filename);
bool fileWrite (const char* const filename);
{ return m_strFilename; }
void printHeaders (std::ostream& os) const;
+ void printHeaders (std::ostringstream& os) const;
};