Isis 3.0 Programmer Reference
Back | Home
SerialNumberList.h
Go to the documentation of this file.
1 #ifndef SerialNumberList_h
2 #define SerialNumberList_h
3 
26 #include <map>
27 #include <vector>
28 
29 #include <QString>
30 
31 namespace Isis {
32 
33  class Progress;
34 
79  public:
80  SerialNumberList(bool checkTarget = true);
81  SerialNumberList(const QString &list, bool checkTarget = true, Progress *progress = NULL);
82  virtual ~SerialNumberList();
83 
84  void add(const QString &filename, bool def2filename = false);
85  void add(const QString &serialNumber, const QString &filename);
86  void add(const char *serialNumber, const char *filename);
87  bool hasSerialNumber(QString sn);
88 
89  void Delete(const QString &sn);
90 
91  int size() const;
92  QString fileName(const QString &sn);
93  QString fileName(int index);
94  QString serialNumber(const QString &filename);
95  QString serialNumber(int index);
96  QString observationNumber(int index);
97  QString spacecraftInstrumentId(int index);
98  QString spacecraftInstrumentId(const QString &sn);
99 
100  int serialNumberIndex(const QString &sn);
101  int fileNameIndex(const QString &filename);
102 
103  std::vector<QString> possibleSerialNumbers(const QString &on);
104 
105  protected:
110  struct Pair {
111  QString filename;
112  QString serialNumber;
113  QString observationNumber;
114  QString spacecraftName;
115  QString instrumentId;
116  };
117 
118  std::vector<Pair> m_pairs;
119  std::map<QString, int> m_serialMap;
120  std::map<QString, int> m_fileMap;
121 
127  QString m_target;
128 
129  };
130 };
131 
132 #endif
int serialNumberIndex(const QString &sn)
Return a list index given a serial number.
void Delete(const QString &sn)
Remove the specified serial number from the list.
bool hasSerialNumber(QString sn)
Determines whether or not the requested serial number exists in the list.
virtual ~SerialNumberList()
Destructor.
void add(const QString &filename, bool def2filename=false)
Adds a new filename / serial number pair to the SerialNumberList.
int size() const
How many serial number / filename combos are in the list.
QString serialNumber(const QString &filename)
Return a serial number given a filename.
QString spacecraftInstrumentId(int index)
Return the spacecraftname/instrumentid at the given index.
std::vector< QString > possibleSerialNumbers(const QString &on)
Return possible serial numbers given an observation number.
std::map< QString, int > m_fileMap
Maps filenames to their positions in the list.
int fileNameIndex(const QString &filename)
Return a list index given a filename.
bool m_checkTarget
Specifies whether or not to check to make sure the target names match between files added to the seri...
std::map< QString, int > m_serialMap
Maps serial numbers to their positions in the list.
QString fileName(const QString &sn)
Return a filename given a serial number.
A serial number list entity that contains the filename serial number pair.
std::vector< Pair > m_pairs
List of serial number Pair entities.
Program progress reporter.
Definition: Progress.h:58
QString m_target
Target name that the files must have if m_checkTarget is true.
QString observationNumber(int index)
Return a observation number given an index.
SerialNumberList(bool checkTarget=true)
Creates an empty SerialNumberList.
Serial Number list generator.

U.S. Department of the Interior | U.S. Geological Survey
ISIS | Privacy & Disclaimers | Astrogeology Research Program
To contact us, please post comments and questions on the ISIS Support Center
File Modified: 07/12/2023 23:28:56