1 /* -*- c++ -*- ---------------------------------------------------------- 2 LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator 3 https://www.lammps.org/, Sandia National Laboratories 4 Steve Plimpton, sjplimp@sandia.gov 5 6 Copyright (2003) Sandia Corporation. Under the terms of Contract 7 DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains 8 certain rights in this software. This software is distributed under 9 the GNU General Public License. 10 11 See the README file in the top-level LAMMPS directory. 12 13 Contributed by Timothy Sirk 14 ------------------------------------------------------------------------- */ 15 16 #ifdef READER_CLASS 17 // clang-format off 18 ReaderStyle(native,ReaderNative); 19 // clang-format on 20 #else 21 22 #ifndef LMP_READER_NATIVE_H 23 #define LMP_READER_NATIVE_H 24 25 #include "reader.h" 26 27 #include <map> 28 29 namespace LAMMPS_NS { 30 31 class ReaderNative : public Reader { 32 public: 33 ReaderNative(class LAMMPS *); 34 ~ReaderNative(); 35 36 int read_time(bigint &); 37 void skip(); 38 bigint read_header(double[3][3], int &, int &, int, int, int *, char **, int, int, int &, int &, 39 int &, int &); 40 void read_atoms(int, int, double **); 41 42 private: 43 char *line; // line read from dump file 44 45 int nwords; // # of per-atom columns in dump file 46 int *fieldindex; // 47 48 int find_label(const std::string &label, const std::map<std::string, int> &labels); 49 void read_lines(int); 50 }; 51 52 } // namespace LAMMPS_NS 53 54 #endif 55 #endif 56 57 /* ERROR/WARNING messages: 58 59 E: Dump file is incorrectly formatted 60 61 Self-explanatory. 62 63 E: Unexpected end of dump file 64 65 A read operation from the file failed. 66 67 */ 68