| | |
| | | int deleteReport(int rptid); |
| | | int addReport(int rptid, const std::vector<unsigned int>& vids); |
| | | int updateReport(int rptid, const std::vector<unsigned int>& vids); |
| | | void clearAllReport(); |
| | | void clearAllReport(BOOL bSave = FALSE); |
| | | |
| | | // 从文件中加载CVariable列表 |
| | | int loadVarialbles(const char* pszFilepath); |
| | |
| | | // 取得指定Variable |
| | | SERVO::CVariable* getVariable(int variableId); |
| | | SERVO::CVariable* getVariable(const char* pszName); |
| | | int getCurrentControlState(); |
| | | bool isHostCommandAllowed(); |
| | | int deleteVariable(int variableId); |
| | | int addVariable(const char* pszName, const char* pszFormat, const char* pszRemark, int& outId); |
| | | int updateVariable(int variableId, const char* pszName, const char* pszFormat, const char* pszRemark); |
| | |
| | | void setVariableValue(const char* pszName, __int64 value); |
| | | void setVariableValue(const char* pszName, const char* value); |
| | | void setVariableValue(const char* pszName, std::vector<SERVO::CVariable>& vars); |
| | | // 执行一段持锁的代码块,用于保证 set+send 的原子性 |
| | | void withVariableLock(const std::function<void()>& fn); |
| | | |
| | | // 从文件中加载CReport列表 |
| | | int loadReports(const char* pszFilepath); |
| | |
| | | int requestEventReportSend(unsigned int CEID); |
| | | int requestEventReportSend(const char* pszEventName); |
| | | int requestEventReportSend_CarrierID_Readed(); |
| | | int requestEventReportSend_CheckSlotMap(); |
| | | int requestEventReportSend_SlotMapVerificationOK(); |
| | | int requestEventReportSend_SlotMapVerificationNG(); |
| | | int requestEventReportSend_Port_Unload_Ready(); |
| | | int requestEventReportSend_Port_Load_Ready(); |
| | | int requestEventReportSend_Port_Ready_To_Release(); |
| | | int requestEventReportSend_Port_Blocked(); |
| | | int requestEventReportSend_PJ_Queued(); |
| | | int requestEventReportSend_PJ_Start(); |
| | |
| | | int requestEventReportSend_Panel_Start(); |
| | | int requestEventReportSend_Panel_End(); |
| | | int requestEventReportSend_OCR_PanelID_Read_OK(); |
| | | int requestEventReportSend_LoadPortNotAssoc(); |
| | | int requestEventReportSend_ProcessDataReport(); |
| | | int requestEventReportSend_SubEqpStart(); |
| | | int requestEventReportSend_SubEqpEnd(); |
| | | |
| | | private: |
| | | void replyAck(int s, int f, unsigned int systemBytes, BYTE ack, const char* pszAckName); |
| | |
| | | // CollectionEvent vector |
| | | std::vector<SERVO::CCollectionEvent*> m_collectionEvents; |
| | | |
| | | // Spooling Config |
| | | std::map<uint16_t, std::set<uint16_t>> m_spoolingConfig; |
| | | }; |
| | | // Spooling blacklist: StreamId -> {FunctionId...} |
| | | // In this map means DO NOT spool/cache. |
| | | // Special case: stream 1 is not spooled regardless of config. |
| | | // If a stream key exists with empty set => blacklist ALL functions in that stream. |
| | | std::map<uint16_t, std::set<uint16_t>> m_spoolBlacklistByStream; |
| | | bool m_spoolingEnabled{ true }; |
| | | |
| | | private: |
| | | bool shouldSpool(uint8_t streamId, uint8_t functionId) const; |
| | | }; |