ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE/libmdtools/ReadWrite.hpp
Revision: 646
Committed: Tue Jul 22 20:05:30 2003 UTC (20 years, 11 months ago) by mmeineke
File size: 1471 byte(s)
Log Message:
making some changes to read dump files

File Contents

# User Rev Content
1 mmeineke 377 #ifndef __READWRITE_H__
2     #define __READWRITE_H__
3    
4     #include <iostream>
5     #include <fstream>
6    
7     #include <cstring>
8     #include <cstdio>
9     #include <cstdlib>
10    
11 mmeineke 646
12 mmeineke 377 #include "Atom.hpp"
13     #include "SimInfo.hpp"
14     #include "Thermo.hpp"
15    
16     using namespace std;
17    
18 mmeineke 646
19    
20    
21 mmeineke 377 class DumpWriter{
22    
23     public:
24     DumpWriter( SimInfo* the_entry_plug );
25     ~DumpWriter();
26    
27     void writeDump( double currentTime );
28 mmeineke 572 void writeFinal( double finalTime );
29 mmeineke 377
30     private:
31     SimInfo* entry_plug;
32     ofstream outFile;
33     char outName[500];
34     };
35    
36     class StatWriter{
37    
38     public:
39     StatWriter( SimInfo* the_entry_plug );
40     ~StatWriter();
41    
42     void writeStat( double currentTime );
43    
44     private:
45    
46     SimInfo* entry_plug;
47     ofstream outFile;
48     char outName[500];
49     Thermo* tStats;
50    
51     };
52    
53     class InitializeFromFile{
54    
55     public:
56     InitializeFromFile( char *in_name );
57     ~InitializeFromFile();
58    
59 mmeineke 641 void readInit( SimInfo* the_entry_plug );
60 mmeineke 377
61     private:
62     char* parseDumpLine(char* line, int atomIndex);
63 mmeineke 644 char* parseBoxLine(char* line, double boxMat[9], double &time );
64 mmeineke 377 FILE *c_in_file;
65     char c_in_name[500];
66 mmeineke 586 SimInfo* simnfo;
67 mmeineke 377 };
68    
69 gezelter 637 class DumpReader{
70 mmeineke 644
71     public:
72 gezelter 637 DumpReader( char *in_name );
73     ~DumpReader();
74 mmeineke 377
75 gezelter 637 int getNframes();
76     void getNextFrame();
77 mmeineke 644 void getFrame(SimInfo* the_entry_plug, int whichFrame);
78 gezelter 637 void rewind();
79 mmeineke 646 void scanFile( void );
80 mmeineke 377
81 gezelter 637 private:
82     char* parseDumpLine(char* line, int atomIndex);
83 mmeineke 644 char* parseCommentLine(char* line, double &time, double boxMat[9] );
84 gezelter 637 FILE *c_in_file;
85     char c_in_name[500];
86     SimInfo* simnfo;
87     };
88    
89    
90 mmeineke 644
91 mmeineke 377 #endif