// >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Sensor *Check::findSensor(const string &id) const { for ( size_t i = 0; i < _inv->sensorCount(); ++i ) { Sensor *sensor = _inv->sensor(i); if ( sensor->publicID() == id ) return sensor; } return NULL; }
// >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> void InventoryTask::prepareSession(const Seiscomp::DataModel::Inventory *inv) { // Create lookup tables _session.dataloggerLookup.clear(); for ( size_t i = 0; i < inv->dataloggerCount(); ++i ) { Datalogger *d = inv->datalogger(i); _session.dataloggerLookup[d->publicID()] = d; } _session.sensorLookup.clear(); for ( size_t i = 0; i < inv->sensorCount(); ++i ) { Sensor *s = inv->sensor(i); _session.sensorLookup[s->publicID()] = s; } _session.auxDeviceLookup.clear(); for ( size_t i = 0; i < inv->auxDeviceCount(); ++i ) { AuxDevice *d = inv->auxDevice(i); _session.auxDeviceLookup[d->publicID()] = d; } _session.firLookup.clear(); for ( size_t i = 0; i < inv->responseFIRCount(); ++i ) { ResponseFIR *r = inv->responseFIR(i); _session.firLookup[r->publicID()] = r; } _session.pazLookup.clear(); for ( size_t i = 0; i < inv->responsePAZCount(); ++i ) { ResponsePAZ *r = inv->responsePAZ(i); _session.pazLookup[r->publicID()] = r; } _session.polyLookup.clear(); for ( size_t i = 0; i < inv->responsePolynomialCount(); ++i ) { ResponsePolynomial *r = inv->responsePolynomial(i); _session.polyLookup[r->publicID()] = r; } }