Files
BPI-CM9-Linux/aml-comp/multimedia/aml_mp_sdk/tests/amlMpTestSupporter/TestModule.h
T
2026-08-24 10:03:24 +08:00

49 lines
1.1 KiB
C++

/*
* Copyright (c) 2020 Amlogic, Inc. All rights reserved.
*
* This source code is subject to the terms and conditions defined in the
* file 'LICENSE' which is part of this source code package.
*
* Description:
*/
#ifndef _TEST_MODULE_H_
#define _TEST_MODULE_H_
#include "demux/AmlTsParser.h"
namespace aml_mp {
class TestModule : virtual public AmlMpRefBase
{
public:
struct Command {
const char* name;
size_t argCount;
const char* help;
int (*fn)(void* handle, const std::vector<std::string>& args);
};
TestModule();
virtual ~TestModule();
void processCommand(const std::vector<std::string>& args);
static void printCommands(const Command* pCommands, bool printHeader);
virtual void* getCommandHandle() const {return nullptr;}
protected:
virtual const Command* getCommandTable() const {return nullptr;}
private:
const Command* findCommand(const std::string& cmdName, const TestModule::Command* commandTable);
TestModule(const TestModule&) = delete;
TestModule& operator=(const TestModule&) = delete;
};
}
#endif