| | |
| | | } |
| | | */ |
| | | struct CarrierSlotInfo { |
| | | std::string carrierId; // CARRIERID |
| | | std::vector<uint8_t> slots; // SLOTID[] |
| | | std::string carrierId; // CARRIERID |
| | | std::vector<uint8_t> slots; // SLOTID[] |
| | | std::vector<void*> contexts; // Glass |
| | | }; |
| | | |
| | | /// 简单资源视图接口:供 Validate() 查询(由设备端实现者在外部提供) |
| | |
| | | explicit CProcessJob(std::string pjId); |
| | | |
| | | const std::string& id() const noexcept { return m_pjId; } |
| | | void setId(std::string& id); |
| | | const std::string& parentCjId() const noexcept { return m_parentCjId; } |
| | | PJState state() const noexcept { return m_state; } |
| | | StartPolicy startPolicy() const noexcept { return m_startPolicy; } |
| | |
| | | }; |
| | | // 返回问题清单(空=通过) |
| | | bool validate(const IResourceView& rv); |
| | | const std::vector<ValidationIssue>& issues(); |
| | | const std::vector<ValidationIssue>& issues() const; |
| | | |
| | | // —— 状态机(带守卫)—— |
| | | bool queue(); // NoState -> Queued |
| | |
| | | |
| | | // 访问器 |
| | | const std::vector<CarrierSlotInfo>& carriers() const noexcept { return m_carriers; } |
| | | CarrierSlotInfo* getCarrier(const std::string& strId); |
| | | |
| | | // 判定是否“按载具/卡位”方式 |
| | | bool usesCarrierSlots() const noexcept { return !m_carriers.empty(); } |