41 if(snlist->
Size() == 0) {
42 QString msg =
"Serial number list is empty";
46 std::map<QString, int> observationMap;
47 QString observationNumber;
52 for(
int isn = 0; isn < snlist->
Size(); isn++) {
55 if(observationMap.find(observationNumber) == observationMap.end()) {
56 observationMap.insert(std::pair<QString, int>(observationNumber, currentIndex));
57 observationIndex = currentIndex++;
60 observationIndex = observationMap.find(observationNumber)->second;
63 Add(isn, observationIndex, observationNumber);
65 p_numberObservations = currentIndex;
81 if(snlist->
Size() == 0) {
82 QString msg =
"Removing serial number list is empty";
89 std::map<QString, int> observationMap;
90 QString observationNumber;
95 for(
int isn = 0; isn < this->
Size(); isn++) {
99 if(observationMap.find(observationNumber) == observationMap.end()) {
100 observationMap.insert(std::pair<QString, int>(observationNumber, currentIndex));
101 observationIndex = currentIndex++;
104 observationIndex = observationMap.find(observationNumber)->second;
107 Add(isn, observationIndex, observationNumber);
109 p_numberObservations = currentIndex;
136 QString observationNumber) {
139 nextset.serialNumberIndex = isn;
140 nextset.observationNumberIndex = observationIndex;
141 nextset.observationNumber = observationNumber;
143 p_sets.push_back(nextset);
144 p_indexMap.insert(std::pair<int, int>(isn, observationIndex));
153 return p_numberObservations;
166 for(
unsigned index = 0; index < p_pairs.size(); index++) {
167 if(p_pairs[index].observationNumber == on) {
183 if(serialNumberIndex >= 0) {
184 return p_indexMap.find(serialNumberIndex)->second;
187 QString msg =
"Serial Number Index [" +
toString(serialNumberIndex) +
"] is invalid";
202 if(p_fileMap.find(
Isis::FileName(filename).expanded()) == p_fileMap.end()) {
203 QString msg =
"Requested filename [" +
205 msg +=
"does not exist in the list";
209 return p_pairs[index].observationNumber;
220 if(index >= 0 && index < (
int) p_pairs.size()) {
221 return p_pairs[index].observationNumber;
224 QString msg =
"Index [" +
toString(index) +
"] is invalid";
238 std::vector<QString> filenames;
239 for(
unsigned index = 0; index < p_pairs.size(); index++) {
240 if(p_pairs[index].observationNumber == on) {
241 filenames.push_back(p_pairs[index].filename);
244 if(filenames.size() > 0) {
248 QString msg =
"Requested observation number [" + on +
"] ";
249 msg +=
"does not exist in the list";