This commit is contained in:
Fancy code 2024-04-25 11:30:51 +08:00
parent 656c5b7d39
commit aaadf977f8
7 changed files with 156 additions and 100 deletions

View File

@ -14,7 +14,30 @@ MCU外接的单片机
2. 抽屉式电池箱组;
3. 捆绑/相机支架安装方式;
4. 可拓展4G模块
5. 户外防水等级?;
5. 户外防水等级?
### 1.2.1. 结构
| 物料 | 备注 |
|----|----|
| 喇叭 | - |
| 麦克风 | - |
| 按键 | 恢复出厂<br>SD卡格式化<br>TEST拨键<br>硬件电源开关 |
| 指示灯 | RGB三色灯 |
| 红外灯 | 940nm |
| usb | TYPEC,充电 |
| 太阳能板 | - |
| 电池仓 | - |
| TF卡卡槽 | - |
| PIR | - |
### 1.2.2. 配件
| 物料 | 备注 |
|----|----|
| 捆绑轧带 | - |
| 快充电池 | - |
| 快充适配器 | - |
## 1.3. 硬件设计

View File

@ -15,6 +15,23 @@
#include "IHalCpp.h"
#include "ILog.h"
#include <memory>
void VKeyHalMonitor::KeyEventHappened(const std::string &keyName, const VirtualKeyEvent &event,
const unsigned int &timeMs)
{
}
void VKeyHal::CheckKeyStatus(void)
{
}
void VKeyHal::GetHoldPressingTimeMs(long int &holdTimeMs, VirtualKeyEvent &event)
{
}
void VKeyHal::SetKeyMonitor(std::shared_ptr<VKeyHalMonitor> &monitor)
{
}
StatusCode VWifiHal::OpenApMode(void)
{
return CreateStatusCode(STATUS_CODE_VIRTUAL_FUNCTION);
}
std::shared_ptr<IHalCpp> &IHalCpp::GetInstance(std::shared_ptr<IHalCpp> *impl)
{
static auto instance = std::make_shared<IHalCpp>();
@ -49,3 +66,6 @@ StatusCode IHalCpp::GetWifiHal(std::shared_ptr<VWifiHal> &wifi)
{
return CreateStatusCode(STATUS_CODE_VIRTUAL_FUNCTION);
}
StatusCode IHalCpp::GetCameraHal(std::shared_ptr<VCameraHal> &camera)
{
}

View File

@ -31,24 +31,16 @@ class VKeyHalMonitor
public:
VKeyHalMonitor() = default;
virtual ~VKeyHalMonitor() = default;
virtual void KeyEventHappened(const std::string &keyName, const VirtualKeyEvent &event, const unsigned int &timeMs)
{
}
virtual void KeyEventHappened(const std::string &keyName, const VirtualKeyEvent &event, const unsigned int &timeMs);
};
class VKeyHal
{
public:
VKeyHal() = default;
virtual ~VKeyHal() = default;
virtual void CheckKeyStatus(void)
{
}
virtual void GetHoldPressingTimeMs(long int &holdTimeMs, VirtualKeyEvent &event)
{
}
virtual void SetKeyMonitor(std::shared_ptr<VKeyHalMonitor> &monitor)
{
}
virtual void CheckKeyStatus(void);
virtual void GetHoldPressingTimeMs(long int &holdTimeMs, VirtualKeyEvent &event);
virtual void SetKeyMonitor(std::shared_ptr<VKeyHalMonitor> &monitor);
};
class VLedHal
{
@ -61,10 +53,19 @@ class VWifiHal
public:
VWifiHal() = default;
virtual ~VWifiHal() = default;
virtual StatusCode OpenApMode(void)
virtual StatusCode OpenApMode(void);
};
class VCameraHalMonitor
{
return CreateStatusCode(STATUS_CODE_VIRTUAL_FUNCTION);
}
public:
VCameraHalMonitor() = default;
virtual ~VCameraHalMonitor() = default;
};
class VCameraHal
{
public:
VCameraHal() = default;
virtual ~VCameraHal() = default;
};
class IHalCpp
{
@ -77,5 +78,6 @@ public:
virtual StatusCode GetAllLeds(std::map<std::string, std::shared_ptr<VLedHal>> &allLeds);
virtual StatusCode GetAllKeys(std::map<std::string, std::shared_ptr<VKeyHal>> &allKeys);
virtual StatusCode GetWifiHal(std::shared_ptr<VWifiHal> &wifi);
virtual StatusCode GetCameraHal(std::shared_ptr<VCameraHal> &camera);
};
#endif

View File

@ -81,3 +81,8 @@ StatusCode HalMakePtr::CreateWifiHal(std::shared_ptr<VWifiHal> &impl)
impl = std::make_shared<WifiHal>();
return CreateStatusCode(STATUS_CODE_OK);
}
StatusCode HalMakePtr::CreateCameraHal(std::shared_ptr<VCameraHal> &impl)
{
LogWarning("CreateCameraHal.\n");
return CreateStatusCode(STATUS_CODE_VIRTUAL_FUNCTION);
}

View File

@ -35,5 +35,6 @@ public:
virtual StatusCode CreateHalPtr(IHal **hal);
virtual StatusCode CreateHalSharePtr(std::shared_ptr<IHalCpp> &impl);
virtual StatusCode CreateWifiHal(std::shared_ptr<VWifiHal> &impl);
virtual StatusCode CreateCameraHal(std::shared_ptr<VCameraHal> &impl);
};
#endif

View File

@ -48,25 +48,11 @@ class VSensorTask
public:
VSensorTask() = default;
virtual ~VSensorTask() = default;
virtual const SensorTaskType GetTaskType(void)
{
return SensorTaskType::END;
}
virtual void Response(const std::vector<SensorTaskResponse> &response)
{
}
virtual bool IsTaskFinished(void)
{
return false;
}
virtual const signed int GetIsNight(void)
{
return 0;
}
virtual const unsigned int GetIsMultShot(void)
{
return false;
}
virtual const SensorTaskType GetTaskType(void);
virtual void Response(const std::vector<SensorTaskResponse> &response);
virtual bool IsTaskFinished(void);
virtual const signed int GetIsNight(void);
virtual const unsigned int GetIsMultShot(void);
};
class VSensorHandle
{

View File

@ -14,6 +14,25 @@
*/
#include "IMediaManager.h"
#include "ILog.h"
const SensorTaskType VSensorTask::GetTaskType(void)
{
return SensorTaskType::END;
}
void VSensorTask::Response(const std::vector<SensorTaskResponse> &response)
{
}
bool VSensorTask::IsTaskFinished(void)
{
return false;
}
const signed int VSensorTask::GetIsNight(void)
{
return 0;
}
const unsigned int VSensorTask::GetIsMultShot(void)
{
return false;
}
std::shared_ptr<IMediaManager> &IMediaManager::GetInstance(std::shared_ptr<IMediaManager> *impl)
{
static auto instance = std::make_shared<IMediaManager>();