A Discrete-Event Network Simulator
API
ascii-file.h
Go to the documentation of this file.
1 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
2 /*
3  * Copyright (c) 2012 University of Washington
4  *
5  * This program is free software; you can redistribute it and/or modify
6  * it under the terms of the GNU General Public License version 2 as
7  * published by the Free Software Foundation;
8  *
9  * This program is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12  * GNU General Public License for more details.
13  *
14  * You should have received a copy of the GNU General Public License
15  * along with this program; if not, write to the Free Software
16  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17  *
18  * Author: Mitch Watrous (watrous@u.washington.edu)
19  *
20  * This file is based on pcap-file.h by Craig Dowell (craigdo@ee.washington.edu)
21  */
22 
23 #ifndef ASCII_FILE_H
24 #define ASCII_FILE_H
25 
26 #include <string>
27 #include <fstream>
28 #include <stdint.h>
29 
30 namespace ns3 {
31 
32 
38 class AsciiFile
39 {
40 public:
41  AsciiFile ();
42  ~AsciiFile ();
43 
47  bool Fail (void) const;
51  bool Eof (void) const;
52 
59  void Open (std::string const &filename, std::ios::openmode mode);
60 
64  void Close (void);
65 
72  void Read (std::string& line);
73 
83  static bool Diff (std::string const & f1,
84  std::string const & f2,
85  uint64_t & lineNumber);
86 
87 private:
88  std::string m_filename;
89  std::fstream m_file;
90 };
91 
92 } // namespace ns3
93 
94 #endif /* ASCII_FILE_H */
bool Fail(void) const
Definition: ascii-file.cc:48
static bool Diff(std::string const &f1, std::string const &f2, uint64_t &lineNumber)
Compare two ASCII files line-by-line.
Definition: ascii-file.cc:83
bool Eof(void) const
Definition: ascii-file.cc:53
void Close(void)
Close the underlying file.
Definition: ascii-file.cc:59
A class representing an ascii file.
Definition: ascii-file.h:38
std::string m_filename
output file name
Definition: ascii-file.h:88
Every class exported by the ns3 library is enclosed in the ns3 namespace.
void Read(std::string &line)
Read next line from file.
Definition: ascii-file.cc:74
void Open(std::string const &filename, std::ios::openmode mode)
Create a new ascii file or open an existing ascii file.
Definition: ascii-file.cc:65
std::fstream m_file
output file
Definition: ascii-file.h:89