STR extensions #798
@ -671,6 +671,10 @@ ReturnValue_t StarTrackerHandler::buildCommandFromCommand(DeviceCommandId_t devi
|
|||||||
result = prepareRequestBlobsTm();
|
result = prepareRequestBlobsTm();
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
case(startracker::REQ_AUTO_BLOB): {
|
||||||
|
result = prepareRequestAutoBlobTm();
|
||||||
|
return returnvalue::OK;
|
||||||
|
}
|
||||||
case (startracker::REQ_MATCHING): {
|
case (startracker::REQ_MATCHING): {
|
||||||
result = prepareRequestMatchingParams();
|
result = prepareRequestMatchingParams();
|
||||||
return result;
|
return result;
|
||||||
@ -1484,6 +1488,8 @@ ReturnValue_t StarTrackerHandler::initializeLocalDataPool(localpool::DataPool& l
|
|||||||
|
|
||||||
localDataPoolMap.emplace(startracker::CHKSUM, new PoolEntry<uint32_t>({0}));
|
localDataPoolMap.emplace(startracker::CHKSUM, new PoolEntry<uint32_t>({0}));
|
||||||
|
|
||||||
|
localDataPoolMap.emplace(startracker::TICKS_AUTO_BLOB, new PoolEntry<uint32_t>());
|
||||||
|
localDataPoolMap.emplace(startracker::TIME_AUTO_BLOB, new PoolEntry<uint64_t>());
|
||||||
localDataPoolMap.emplace(startracker::AUTO_BLOB_THRESHOLD, new PoolEntry<float>());
|
localDataPoolMap.emplace(startracker::AUTO_BLOB_THRESHOLD, new PoolEntry<float>());
|
||||||
|
|
||||||
localDataPoolMap.emplace(startracker::PoolIds::NUM_MATCHED_CENTROIDS, new PoolEntry<uint8_t>());
|
localDataPoolMap.emplace(startracker::PoolIds::NUM_MATCHED_CENTROIDS, new PoolEntry<uint8_t>());
|
||||||
@ -2351,6 +2357,7 @@ ReturnValue_t StarTrackerHandler::handleAutoBlobTm(const uint8_t* rawFrame) {
|
|||||||
if (result != returnvalue::OK) {
|
if (result != returnvalue::OK) {
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
rawFrame += TICKS_OFFSET;
|
||||||
size_t remainingLen = fullPacketLen;
|
size_t remainingLen = fullPacketLen;
|
||||||
PoolReadGuard pg(&autoBlobSet);
|
PoolReadGuard pg(&autoBlobSet);
|
||||||
result = pg.getReadResult();
|
result = pg.getReadResult();
|
||||||
@ -2381,6 +2388,7 @@ ReturnValue_t StarTrackerHandler::handleMatchedCentroidTm(const uint8_t* rawFram
|
|||||||
if (result != returnvalue::OK) {
|
if (result != returnvalue::OK) {
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
rawFrame += TICKS_OFFSET;
|
||||||
size_t remainingLen = fullPacketLen;
|
size_t remainingLen = fullPacketLen;
|
||||||
PoolReadGuard pg(&matchedCentroidsSet);
|
PoolReadGuard pg(&matchedCentroidsSet);
|
||||||
result = pg.getReadResult();
|
result = pg.getReadResult();
|
||||||
@ -2440,6 +2448,7 @@ ReturnValue_t StarTrackerHandler::handleBlobTm(const uint8_t* rawFrame) {
|
|||||||
if (result != returnvalue::OK) {
|
if (result != returnvalue::OK) {
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
rawFrame += TICKS_OFFSET;
|
||||||
size_t remainingLen = fullPacketLen;
|
size_t remainingLen = fullPacketLen;
|
||||||
PoolReadGuard pg(&blobsSet);
|
PoolReadGuard pg(&blobsSet);
|
||||||
result = pg.getReadResult();
|
result = pg.getReadResult();
|
||||||
@ -2470,6 +2479,7 @@ ReturnValue_t StarTrackerHandler::handleBlobsTm(const uint8_t* rawFrame) {
|
|||||||
if (result != returnvalue::OK) {
|
if (result != returnvalue::OK) {
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
rawFrame += TICKS_OFFSET;
|
||||||
size_t remainingLen = fullPacketLen;
|
size_t remainingLen = fullPacketLen;
|
||||||
PoolReadGuard pg(&blobsSet);
|
PoolReadGuard pg(&blobsSet);
|
||||||
result = pg.getReadResult();
|
result = pg.getReadResult();
|
||||||
@ -2522,6 +2532,7 @@ ReturnValue_t StarTrackerHandler::handleCentroidTm(const uint8_t* rawFrame) {
|
|||||||
if (result != returnvalue::OK) {
|
if (result != returnvalue::OK) {
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
rawFrame += TICKS_OFFSET;
|
||||||
size_t remainingLen = fullPacketLen;
|
size_t remainingLen = fullPacketLen;
|
||||||
PoolReadGuard pg(¢roidsSet);
|
PoolReadGuard pg(¢roidsSet);
|
||||||
result = pg.getReadResult();
|
result = pg.getReadResult();
|
||||||
@ -2553,6 +2564,7 @@ ReturnValue_t StarTrackerHandler::handleCentroidsTm(const uint8_t* rawFrame) {
|
|||||||
if (result != returnvalue::OK) {
|
if (result != returnvalue::OK) {
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
rawFrame += TICKS_OFFSET;
|
||||||
size_t remainingLen = fullPacketLen;
|
size_t remainingLen = fullPacketLen;
|
||||||
PoolReadGuard pg(¢roidsSet);
|
PoolReadGuard pg(¢roidsSet);
|
||||||
result = pg.getReadResult();
|
result = pg.getReadResult();
|
||||||
|
@ -274,6 +274,8 @@ enum PoolIds : lp_id_t {
|
|||||||
DEBUG_CAMERA_TIMING,
|
DEBUG_CAMERA_TIMING,
|
||||||
DEBUG_CAMERA_TEST,
|
DEBUG_CAMERA_TEST,
|
||||||
|
|
||||||
|
TICKS_AUTO_BLOB,
|
||||||
|
TIME_AUTO_BLOB,
|
||||||
AUTO_BLOB_THRESHOLD,
|
AUTO_BLOB_THRESHOLD,
|
||||||
|
|
||||||
TICKS_MATCHED_CENTROIDS,
|
TICKS_MATCHED_CENTROIDS,
|
||||||
@ -1441,10 +1443,10 @@ class AutoBlobSet : public StaticLocalDataSet<3> {
|
|||||||
AutoBlobSet(HasLocalDataPoolIF* owner) : StaticLocalDataSet(owner, AUTO_BLOB_SET_ID) {}
|
AutoBlobSet(HasLocalDataPoolIF* owner) : StaticLocalDataSet(owner, AUTO_BLOB_SET_ID) {}
|
||||||
// Ticks timestamp
|
// Ticks timestamp
|
||||||
lp_var_t<uint32_t> ticks =
|
lp_var_t<uint32_t> ticks =
|
||||||
lp_var_t<uint32_t>(sid.objectId, PoolIds::TICKS_MATCHED_CENTROIDS, this);
|
lp_var_t<uint32_t>(sid.objectId, PoolIds::TICKS_AUTO_BLOB, this);
|
||||||
// Unix time stamp
|
// Unix time stamp
|
||||||
lp_var_t<uint64_t> timeUs =
|
lp_var_t<uint64_t> timeUs =
|
||||||
lp_var_t<uint64_t>(sid.objectId, PoolIds::TIME_MATCHED_CENTROIDS, this);
|
lp_var_t<uint64_t>(sid.objectId, PoolIds::TIME_AUTO_BLOB, this);
|
||||||
lp_var_t<float> threshold = lp_var_t<float>(sid.objectId, PoolIds::AUTO_BLOB_THRESHOLD, this);
|
lp_var_t<float> threshold = lp_var_t<float>(sid.objectId, PoolIds::AUTO_BLOB_THRESHOLD, this);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
@ -1466,15 +1468,15 @@ class MatchedCentroidsSet : public StaticLocalDataSet<20> {
|
|||||||
lp_var_t<uint8_t> numberOfMatchedCentroids =
|
lp_var_t<uint8_t> numberOfMatchedCentroids =
|
||||||
lp_var_t<uint8_t>(sid.objectId, PoolIds::NUM_MATCHED_CENTROIDS, this);
|
lp_var_t<uint8_t>(sid.objectId, PoolIds::NUM_MATCHED_CENTROIDS, this);
|
||||||
lp_vec_t<uint32_t, 16> starIds =
|
lp_vec_t<uint32_t, 16> starIds =
|
||||||
lp_vec_t<uint32_t, 16>(sid.objectId, PoolIds::MATCHED_CENTROIDS_STAR_IDS);
|
lp_vec_t<uint32_t, 16>(sid.objectId, PoolIds::MATCHED_CENTROIDS_STAR_IDS, this);
|
||||||
lp_vec_t<float, 16> xCoords =
|
lp_vec_t<float, 16> xCoords =
|
||||||
lp_vec_t<float, 16>(sid.objectId, PoolIds::MATCHED_CENTROIDS_X_COORDS);
|
lp_vec_t<float, 16>(sid.objectId, PoolIds::MATCHED_CENTROIDS_X_COORDS, this);
|
||||||
lp_vec_t<float, 16> yCoords =
|
lp_vec_t<float, 16> yCoords =
|
||||||
lp_vec_t<float, 16>(sid.objectId, PoolIds::MATCHED_CENTROIDS_Y_COORDS);
|
lp_vec_t<float, 16>(sid.objectId, PoolIds::MATCHED_CENTROIDS_Y_COORDS, this);
|
||||||
lp_vec_t<float, 16> xErrors =
|
lp_vec_t<float, 16> xErrors =
|
||||||
lp_vec_t<float, 16>(sid.objectId, PoolIds::MATCHED_CENTROIDS_X_ERRORS);
|
lp_vec_t<float, 16>(sid.objectId, PoolIds::MATCHED_CENTROIDS_X_ERRORS, this);
|
||||||
lp_vec_t<float, 16> yErrors =
|
lp_vec_t<float, 16> yErrors =
|
||||||
lp_vec_t<float, 16>(sid.objectId, PoolIds::MATCHED_CENTROIDS_Y_ERRORS);
|
lp_vec_t<float, 16>(sid.objectId, PoolIds::MATCHED_CENTROIDS_Y_ERRORS, this);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
};
|
};
|
||||||
|
2
tmtc
2
tmtc
@ -1 +1 @@
|
|||||||
Subproject commit c4598ff05858952d0107d4f6f61cbef8ff2de691
|
Subproject commit 97b529318dbc654ec55fd765f892bff212918f39
|
Loading…
Reference in New Issue
Block a user