| 63 | } |
| 64 | |
| 65 | af_err af_retain_features(af_features *outHandle, |
| 66 | const af_features featHandle) { |
| 67 | try { |
| 68 | af_features_t feat = getFeatures(featHandle); |
| 69 | af_features_t out; |
| 70 | |
| 71 | out.n = feat.n; |
| 72 | AF_CHECK(af_retain_array(&out.x, feat.x)); |
| 73 | AF_CHECK(af_retain_array(&out.y, feat.y)); |
| 74 | AF_CHECK(af_retain_array(&out.score, feat.score)); |
| 75 | AF_CHECK(af_retain_array(&out.orientation, feat.orientation)); |
| 76 | AF_CHECK(af_retain_array(&out.size, feat.size)); |
| 77 | |
| 78 | *outHandle = getFeaturesHandle(out); |
| 79 | } |
| 80 | CATCHALL; |
| 81 | return AF_SUCCESS; |
| 82 | } |
| 83 | |
| 84 | af_err af_get_features_num(dim_t *num, const af_features featHandle) { |
| 85 | try { |
no test coverage detected