From fe4d335b54ede7a47fd4bcf5c228fb427cbcc8c9 Mon Sep 17 00:00:00 2001
From: chenlh <2008get@163.com>
Date: 星期二, 20 一月 2026 14:46:01 +0800
Subject: [PATCH] 新增通道参数拷贝功能
---
src/tob.cpp | 19 +++++++++----------
1 files changed, 9 insertions(+), 10 deletions(-)
diff --git a/src/tob.cpp b/src/tob.cpp
index c853129..1c90427 100644
--- a/src/tob.cpp
+++ b/src/tob.cpp
@@ -13,6 +13,7 @@
#include "protocol_internal.h"
#include "IModule.h"
#include "f2f.h"
+#include "var_state.h"
#include "../drv/memory.h"
@@ -409,16 +410,16 @@
return ErrStatus::SUCCESS;
}
-u32 ToB::GetModuleType(u32 mID)
+IModule* ToB::GetModule(u32 mID)
{
if(mID >= mModuleIndex.size() || mModuleIndex[mID] == 0) {
- return ErrStatus::ERR_PARAM;
+ return NULL;
}
IModule* m = mList[mModuleIndex[mID]-1];
if( m != NULL) {
- return m->GetModuleType();
+ return m;
}
- return 0;
+ return NULL;
}
/*ErrStatus ToB::toCtrl(u32 mID, u32 pID, const s16* val, u32 num)
@@ -448,16 +449,14 @@
if(mID >= mModuleIndex.size() || mModuleIndex[mID] == 0) {
return ErrStatus::ERR_PARAM;
}
+// VarState& var = VarState::GetInstance();
+// printf("mID:%d\n", mID);
+ void *paramPtr = VarState::GetInstance().pscene->get_param(mID);
IModule* m = mList[mModuleIndex[mID]-1];
-// if (m->GetModuleType() == PROC_CONTINUNOUS_SPL && pID == 9) {
-// mID += 320;
-// m = mList[mModuleIndex[mID]-1];
-// }
-
if( m != NULL) {
// m->Ctrl(pID, val, num);
- paramset->GetCtrlEntry(m->GetModuleType())(m, pID, (s16*)val, num);
+ paramset->GetCtrlEntry(m->GetModuleType())(m, pID, (s16*)val, num, paramPtr);
}
// dbg_printf("mID:%d pID:%d val[0]:%d val[1]:%d\n",mID, pID, val[0], val[1]);
return ErrStatus::SUCCESS;
--
Gitblit v1.9.3