Geant4 Cross Reference |
>> 1 // This code implementation is the intellectual property of >> 2 // the GEANT4 collaboration. 1 // 3 // 2 // ******************************************* << 4 // By copying, distributing or modifying the Program (or any work 3 // * License and Disclaimer << 5 // based on the Program) you indicate your acceptance of this statement, 4 // * << 6 // and all its terms. 5 // * The Geant4 software is copyright of th << 6 // * the Geant4 Collaboration. It is provided << 7 // * conditions of the Geant4 Software License << 8 // * LICENSE and available at http://cern.ch/ << 9 // * include a list of copyright holders. << 10 // * << 11 // * Neither the authors of this software syst << 12 // * institutes,nor the agencies providing fin << 13 // * work make any representation or warran << 14 // * regarding this software system or assum << 15 // * use. Please see the license in the file << 16 // * for the full disclaimer and the limitatio << 17 // * << 18 // * This code implementation is the result << 19 // * technical work of the GEANT4 collaboratio << 20 // * By using, copying, modifying or distri << 21 // * any work based on the software) you ag << 22 // * use in resulting scientific publicati << 23 // * acceptance of all terms of the Geant4 Sof << 24 // ******************************************* << 25 // 7 // 26 // G4OrderedTable << 8 // $Id: G4OrderedTable.hh,v 1.4 1999/11/16 17:40:39 gcosmo Exp $ >> 9 // GEANT4 tag $Name: geant4-01-00 $ 27 // 10 // 28 // Class description: << 11 // >> 12 // ------------------------------------------------------------ 29 // 13 // 30 // Utility class, defining an ordered collecti << 14 // This class is setting up an ordered collection of 31 << 15 // ordered vectors of <G4double> 32 // Author: M.Maire (LAPP), September 1996 << 16 // 30 September 1996, M.Maire 33 // Revisions: H.Kurashige (Kobe Univ.), Januar << 17 // 34 // ------------------------------------------- << 18 // ------------------------------------------------------------ 35 #ifndef G4OrderedTable_hh << 36 #define G4OrderedTable_hh 1 << 37 19 38 #include <vector> << 20 #ifndef G4OrderedTable_h >> 21 #define G4OrderedTable_h 1 39 22 40 #include "G4DataVector.hh" << 41 #include "globals.hh" 23 #include "globals.hh" >> 24 #include "g4rw/tvordvec.h" >> 25 #include "g4rw/tpordvec.h" 42 26 43 class G4OrderedTable : public std::vector<G4Da << 27 class G4ValVector : public G4RWTValOrderedVector<G4double> 44 { 28 { 45 public: << 46 G4OrderedTable() = default; << 47 // Default constructor << 48 29 49 explicit G4OrderedTable(std::size_t cap); << 30 public: 50 // Constructor given a 'capacity' defining t << 51 // number of elements (NULL pointers are fil << 52 31 53 virtual ~G4OrderedTable() = default; << 32 G4ValVector(size_t capac=G4RWDEFAULT_CAPACITY) 54 // Empty Destructor << 33 : G4RWTValOrderedVector<G4double>(capac) {;} 55 34 56 void clearAndDestroy(); << 35 virtual ~G4ValVector() {;} 57 // Removes all elements and deletes all non- << 58 36 59 G4bool Store(const G4String& filename, G4boo << 60 // Stores OrderedTable in a file (returns fa << 61 37 62 G4bool Retrieve(const G4String& filename, G4 << 38 G4bool operator==(const G4ValVector &right) const 63 // Retrieves OrderedTable from a file (retur << 39 { >> 40 return (this == (G4ValVector *) &right); >> 41 } 64 42 65 friend std::ostream& operator<<(std::ostream << 66 }; 43 }; >> 44 >> 45 typedef G4RWTPtrOrderedVector<G4ValVector> G4OrderedTable; 67 46 68 #endif 47 #endif 69 48