iphreeqc/ChartHandler.h
David L Parkhurst 2b11772777 Rewrote run_cells to do all of the calculations that would be
done if a series of USE and SAVE.

Modified the logic when time step is defined in run_cells. Equivalent to time_step in nmax steps, where nmax is max steps
in kinetics, reaction, reaction_temperature.

Wrote dump for chart and chart_handler. chart_handler calls dump for all user_graph.

Fixed bug in chart_object with log definition. Had wrong logic when looking for t/T/l/L.

initial_total_time initialized twice in mainsubs and twice in phreeqc.cpp.

Fixed heading logic for mixing graph_x, graph_y, graph_sy with plot_xy.

Moved NA to header file.


git-svn-id: svn://136.177.114.72/svn_GW/phreeqcpp/trunk@5431 1feff8c3-07ed-0310-ac33-dd36852eb9cd
2011-06-10 22:00:46 +00:00

45 lines
830 B
C++

#if !defined(CHARTHANDLER_H_INCLUDED)
#define CHARTHANDLER_H_INCLUDED
#if defined MULTICHART
#include <vector>
#include <map>
#include <string>
#include "Parser.h"
#include "ChartObject.h"
class ChartHandler
{
public:
ChartHandler();
~ChartHandler();
size_t Get_chart_count()
{
return this->chart_map.size();
}
ChartObject * Get_current_chart()
{
return this->current_chart;
}
bool Get_timer()
{
return timer;
}
bool Read(PHREEQC_PTR_ARG_COMMA CParser &parser);
void Punch_user_graph(PHREEQC_PTR_ARG);
bool End_timer(PHREEQC_PTR_ARG);
bool dump(std::ostream & oss, unsigned int indent);
protected:
std::map<int, ChartObject *> chart_map;
int current_chart_n_user;
ChartObject * current_chart;
bool u_g_defined;
bool timer;
public:
};
#endif // MULTICHART
#endif // !defined(CHARTHANDLER_H_INCLUDED)