Userspace Resource Manager
Loading...
Searching...
No Matches
Signal.h
1// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
2// SPDX-License-Identifier: BSD-3-Clause-Clear
3
4#ifndef SIGNAL_H
5#define SIGNAL_H
6
7#include <string>
8
9#include "ErrCodes.h"
10#include "SafeOps.h"
11#include "Logger.h"
12#include "Message.h"
13#include "MemoryPool.h"
14
18class Signal : public Message {
19private:
20 uint32_t mSignalCode;
21 uint32_t mSignalType;
22 std::string mAppName;
23 std::string mScenario;
24 int32_t mNumArgs;
25 std::vector<uint32_t>* mListArgs;
26
27public:
28 Signal();
29 ~Signal();
30
31 uint32_t getSignalCode();
32 uint32_t getSignalType();
33 int32_t getNumArgs();
34 const std::string getAppName();
35 const std::string getScenario();
36 uint32_t getListArgAt(int32_t index);
37 std::vector<uint32_t>* getListArgs();
38
39 void setSignalCode(uint32_t signalCode);
40 void setSignalType(uint32_t signalType);
41 void setAppName(const std::string& appName);
42 void setScenario(const std::string& scenario);
43 void setNumArgs(int32_t numArgs);
44 void setList(std::vector<uint32_t>* mListArgs);
45
46 ErrCode serialize(char* buf);
47 ErrCode deserialize(char* buf);
48
49 static void cleanUpSignal(Signal* signal);
50};
51
52#endif
ErrCode
Custom Error Codes used by Resource Tuner APIs and Internal Functions.
Definition ErrCodes.h:19
Base-Type for Request and Signal classes.
Definition Message.h:12
Encapsulation type for a Signal Tuning Request.
Definition Signal.h:18
int32_t mNumArgs
Number of Additional Args.
Definition Signal.h:24
uint32_t mSignalCode
ID of the Signal to be Tuned to be tuned as Part of the Request.
Definition Signal.h:20
std::vector< uint32_t > * mListArgs
Pointer to a list, storing the additional args.
Definition Signal.h:25