Move Transceiver::detectBurst() to sigProcLib to make it reusable.

Change-Id: I3cbe8e6e4f39dde02c945e6c9086c040e276845c
This commit is contained in:
Alexander Chemeris
2017-03-17 15:24:18 -07:00
parent 4aa548f0c2
commit 4e6c938024
4 changed files with 56 additions and 37 deletions

View File

@@ -1925,6 +1925,38 @@ int detectEdgeBurst(signalVector &burst, unsigned tsc, float threshold,
return rc;
}
int detectAnyBurst(signalVector &burst, unsigned tsc, float threshold,
int sps, CorrType type, complex &amp, float &toa,
unsigned max_toa)
{
int rc = 0;
switch (type) {
case EDGE:
rc = detectEdgeBurst(burst, tsc, threshold, sps,
amp, toa, max_toa);
if (rc > 0)
break;
else
type = TSC;
case TSC:
rc = analyzeTrafficBurst(burst, tsc, threshold, sps,
amp, toa, max_toa);
break;
case RACH:
rc = detectRACHBurst(burst, threshold, sps, amp, toa,
max_toa);
break;
default:
LOG(ERR) << "Invalid correlation type";
}
if (rc > 0)
return type;
return rc;
}
signalVector *downsampleBurst(signalVector &burst)
{
signalVector *in, *out;