Пример #1
0
// >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
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;
}
Пример #2
0
// >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
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;
	}
}