Resource Tuner
Loading...
Searching...
No Matches
SignalExtFeatureMapper.h
1// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
2// SPDX-License-Identifier: BSD-3-Clause-Clear
3
4#ifndef SIGNAL_EXT_FEATURE_MAPPER_H
5#define SIGNAL_EXT_FEATURE_MAPPER_H
6
7#include <vector>
8#include <unordered_map>
9#include <memory>
10
11#include "SignalRegistry.h"
12
13class SignalExtFeatureMapper {
14private:
15 static std::shared_ptr<SignalExtFeatureMapper> signalExtFeatureMapperInstance;
16 std::unordered_map<uint32_t, std::vector<uint32_t>> mSignalTofeaturesMap;
17
18public:
19 int8_t addFeature(uint32_t signal, int32_t feature);
20
21 int8_t getFeatures(uint32_t signal, std::vector<uint32_t>& features);
22
23 static std::shared_ptr<SignalExtFeatureMapper> getInstance() {
24 if(signalExtFeatureMapperInstance == nullptr) {
25 signalExtFeatureMapperInstance = std::shared_ptr<SignalExtFeatureMapper> (new SignalExtFeatureMapper());
26 }
27 return signalExtFeatureMapperInstance;
28 }
29};
30
31#endif