00001 // GnuPlotterTrajectoryObserver.h: interface for the GnuPlotterTrajectoryObserver class. 00002 // 00004 00005 #if !defined(AFX_GNUPLOTTERTRAJECTORYOBSERVER_H__7CF186AA_E654_4CBF_BADB_C12F78FA6523__INCLUDED_) 00006 #define AFX_GNUPLOTTERTRAJECTORYOBSERVER_H__7CF186AA_E654_4CBF_BADB_C12F78FA6523__INCLUDED_ 00007 00008 #if _MSC_VER > 1000 00009 #pragma once 00010 #endif // _MSC_VER > 1000 00011 00012 #include "GnuPlotter.h" 00013 #include "SingleNetworkMinimizable.h" 00014 00015 class GnuPlotterTrajectoryObserver : public GnuPlotter 00016 { 00017 public: 00018 GnuPlotterTrajectoryObserver(int chemX, int chemY, int chemZ=-1); 00019 virtual ~GnuPlotterTrajectoryObserver(); 00020 void Update(Subject *theChangedSubject); 00021 void AddChemicalToList(int chemNumber); 00022 protected: 00023 // which chemicals to monitor for phase plot(on X and Y axis) 00024 int chemX; 00025 int chemY; 00026 int chemZ; 00027 // which chemicals' time series to monitor (chemicals for which 00028 // data exists are automatically monitored by another observer) 00029 std::vector<int> otherChem; 00030 }; 00031 00032 #endif // !defined(AFX_GNUPLOTTER2DTRAJECTORYOBSERVER_H__7CF186AA_E654_4CBF_BADB_C12F78FA6523__INCLUDED_)