| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115 |
- /**************************************************************************************************
- 版本所有(C), 2020-2022, 北京普达迪泰
- ***************************************************************************************************
- 文 件 名: DynamicData.h
- 功能描述: Dynamic Task任务数据
- 版 本 号: 1.00初版
- 作 者: HYF
- 生成日期; 2021-12-20
- 最近修改:
- 函数列表:
- 修改历史:
- 1.日 期 :2021-12-20
- 作 者 : HYF
- 修改内容 : 创建文件
- **************************************************************************************************/
- #pragma once
- #include <afx.h>
- #include <afxtempl.h>
- #include "pch.h"
- class PostureDataAngle;
- class PostureDataPoint;
- class DictManager;
- class DynamicData : public CObject
- {
- public:
- DynamicData();
- DynamicData(DWORD taskId, LPCTSTR szEquipTypeCode, LPCTSTR szEquipCode, LPCTSTR szEquipPlace);
- virtual ~DynamicData();
- private:
- // 字典管理
- DictManager *m_pDictManager;
- // 任务ID
- DWORD m_taskId;
- // 设备型号
- CString m_szEquipTypeCode;
- // 设备编码
- CString m_szEquipCode;
- // 设备部位
- CString m_szEquipPlace;
- // 偏角列表
- CPostureAngleList m_AngleList;
- // 点列表
- CPosturePointList m_PointList;
- // 信号量
- CSemaphore *m_pSeamaphore;
- public:
- void Lock() { m_pSeamaphore->Lock();}
- void Unlock() { m_pSeamaphore->Unlock(); }
- public:
- // 任务ID
- void SetTaskId(DWORD iTaskId) { m_taskId = iTaskId; }
- DWORD GetTaskId() const { return m_taskId; }
- // 设备型号
- void SetEquipTypeCode(LPCTSTR szEquipTypeCode) { m_szEquipTypeCode = szEquipTypeCode; }
- CString GetEquipTypeCode() const { return m_szEquipTypeCode; }
- // 设备编号
- void SetEquipCode(LPCTSTR szEquipCode) { m_szEquipCode = szEquipCode; }
- CString GetEquipCode() const { return m_szEquipCode; }
- // 设备部位
- void SetEquipPlace(LPCTSTR szEquipPlace) { m_szEquipPlace = szEquipPlace; }
- CString GetEquipPlace() const { return m_szEquipPlace; }
- // 推力线偏角
- CPostureAngleList* GetAngleList() { return &m_AngleList; }
- // 点
- CPosturePointList* GetPointList() { return &m_PointList; }
- public:
-
- // 新增点
- void AddPoint(PostureDataPoint *pNewPoint);
- // 新增推力线偏角
- void AddAngle(PostureDataAngle *pNewAngle);
- // 计算推力线偏角
- void CalcAngle();
- void CalcTestAngle();
- // 基于任务ID和部位获取动力线数据
- PostureDataAngle* GetAngle(DWORD taskId, LPCTSTR szEquipPlace);
- public:
- // 调试打印
- void PrintData();
- void PrintAngle(CStdioFile *pFile);
- void PrintPoint(CStdioFile *pFile);
-
-
- //清除
- void Clear();
- // 存储到数据库
- void SaveToDB();
- void SaveAngleToDB();
- void SavePointToDB();
- };
|