From 549decf91ef988814913cddc86f5c4e006b277e7 Mon Sep 17 00:00:00 2001
From: LAPTOP-SNT8I5JK\Boounion <Chenluhua@qq.com>
Date: 星期四, 21 八月 2025 05:27:48 +0800
Subject: [PATCH] Merge branch 'clh' of http://soft.boounion.cn/r/~chenluhua/Bond2 into clh

---
 SourceCode/Bond/Servo/ProcessJob.h |   12 +++++++++++-
 1 files changed, 11 insertions(+), 1 deletions(-)

diff --git a/SourceCode/Bond/Servo/ProcessJob.h b/SourceCode/Bond/Servo/ProcessJob.h
index 9cf2fc5..062bd8b 100644
--- a/SourceCode/Bond/Servo/ProcessJob.h
+++ b/SourceCode/Bond/Servo/ProcessJob.h
@@ -85,6 +85,7 @@
     class CProcessJob {
     public:
         // —— 构造 / 基本设置 ——
+        CProcessJob();
         explicit CProcessJob(std::string pjId);
 
         const std::string& id() const noexcept { return m_pjId; }
@@ -118,7 +119,7 @@
         };
         // 返回问题清单(空=通过)
         bool validate(const IResourceView& rv);
-        const std::vector<ValidationIssue>& issue();
+        const std::vector<ValidationIssue>& issues();
 
         // —— 状态机(带守卫)——
         bool queue();           // NoState -> Queued
@@ -157,6 +158,15 @@
         bool usesCarrierSlots() const noexcept { return !m_carriers.empty(); }
 
 
+    public:
+        // ====== 版本头常量(建议保留,便于兼容)======
+        static constexpr uint32_t PJ_FILE_MAGIC = 0x504A4A31; // "PJJ1"
+        static constexpr uint16_t PJ_FILE_VERSION = 0x0001;
+
+        // ====== 流式序列化接口 ======
+        void serialize(std::ostream& os) const;
+        static bool deserialize(std::istream& is, CProcessJob& out, std::string* err = nullptr);
+
     private:
         // 内部状态转移帮助
         void markQueued();

--
Gitblit v1.9.3