From 293098b54ca4094673cb4c970592fc6534073ff5 Mon Sep 17 00:00:00 2001
From: "m.marn" <m.marn@gsi.de>
Date: Wed, 8 Nov 2023 13:59:14 +0100
Subject: [PATCH] Remove old functions with duplicated code.

---
 .../src/xml/fesa/fesa_3_0_0/fesaTemplates.py  | 316 ------------------
 1 file changed, 316 deletions(-)

diff --git a/silecs-codegen/src/xml/fesa/fesa_3_0_0/fesaTemplates.py b/silecs-codegen/src/xml/fesa/fesa_3_0_0/fesaTemplates.py
index c6e060a..f9f9761 100644
--- a/silecs-codegen/src/xml/fesa/fesa_3_0_0/fesaTemplates.py
+++ b/silecs-codegen/src/xml/fesa/fesa_3_0_0/fesaTemplates.py
@@ -492,32 +492,6 @@ cGetStringRegData = string.Template("""
         }
 """)
 
-cGetStringArrayReg = string.Template("""
-        {
-            auto& pRegister = pPLCDevice->getRegister("${regName}");
-            uint32_t dim1 = pRegister->getDimension1();
-            const std::string** stdStringArray = pRegister->getRefArray<const std::string*>(dim1);
-            for (unsigned int i=0; i<dim1; i++)
-            {
-                pDevice->${fesaFieldName}.setString(stdStringArray[i]->c_str(), i, pContext);
-            }
-        }
-""")
-
-cGetStringArrayRegData = string.Template("""
-        {
-            auto& pRegister = pPLCDevice->getRegister("${regName}");
-            uint32_t dim1 = pRegister->getDimension1();
-            const std::string** stdStringArray = pRegister->getRefArray<const std::string*>(dim1);
-            std::vector<std::string> strings;
-            for (unsigned int i=0; i<dim1; i++)
-            {
-                strings.push_back(stdStringArray[i]->c_str());
-            }
-            data.set${fesaFieldName_upper}(strings);
-        }
-""")
-
 cGetScalarReg = string.Template("""
         pDevice->${fesaFieldName}.set( pPLCDevice->getRegister("${regName}")->getVal<${regType}>(), pContext);""")
 
@@ -530,133 +504,6 @@ cGetCustomScalarReg = string.Template("""
 cGetCustomScalarRegData = string.Template("""
         data.set${fesaFieldName_upper}(static_cast<${enumName}::${enumName}>(pPLCDevice->getRegister("${regName}")->getVal<${regType}>()));""")
         
-cGetArrayReg = string.Template("""
-        {
-            auto& pRegister = pPLCDevice->getRegister("${regName}");
-            uint32_t dim1 = pRegister->getDimension1();
-            pDevice->${fesaFieldName}.set(pRegister->getRefArray<${regType}>(dim1), dim1, pContext);
-        }
-        """)
-cGetArrayRegData = string.Template("""
-        {
-            auto& pRegister = pPLCDevice->getRegister("${regName}");
-            uint32_t dim1 = pRegister->getDimension1();
-            data.set${fesaFieldName_upper}(pRegister->getRefArray<${regType}>(dim1), dim1);
-        }
-        """)
-cGetCustomArrayReg = string.Template("""
-        {
-            auto& pRegister = pPLCDevice->getRegister("${regName}");
-            uint32_t dim1;
-            ${regType}* data = pRegister->getRefArray<${regType}>(dim1);
-            std::vector<${enumName}::${enumName}> ${regName};
-            for(uint32_t i = 0; i < dim1; ++i)
-            {
-                ${regName}.push_back(static_cast<${enumName}::${enumName}>(*(data + i)));
-            }
-            pDevice->${fesaFieldName}.set(${regName}.data(), dim1, pContext);
-        }
-        """)
-cGetCustomArrayRegData = string.Template("""
-        {
-            auto& pRegister = pPLCDevice->getRegister("${regName}");
-            uint32_t dim1;
-            ${regType}* arrData = pRegister->getRefArray<${regType}>(dim1);
-            std::vector<${enumName}::${enumName}> ${regName};
-            for(uint32_t i = 0; i < dim1; ++i)
-            {
-                ${regName}.push_back(static_cast<${enumName}::${enumName}>(*(arrData + i)));
-            }
-            data.set${fesaFieldName_upper}(${regName}.data(), dim1);
-        }
-        """)
-cGetArray2DReg = string.Template("""
-        {
-            auto& pRegister = pPLCDevice->getRegister("${regName}");
-            uint32_t dim1 = pRegister->getDimension1();
-            uint32_t dim2 = pRegister->getDimension2();
-            pDevice->${fesaFieldName}.set(pRegister->getRefArray2D<${regType}>(dim1, dim2), dim1, dim2, pContext);
-        }
-""")
-cGetArray2DRegData = string.Template("""
-        {
-            auto& pRegister = pPLCDevice->getRegister("${regName}");
-            uint32_t dim1 = pRegister->getDimension1();
-            uint32_t dim2 = pRegister->getDimension2();
-            data.set${fesaFieldName_upper}(pRegister->getRefArray2D<${regType}>(dim1, dim2), dim1, dim2);
-        }
-""")
-cGetCustomArray2DReg = string.Template("""
-        {
-            auto& pRegister = pPLCDevice->getRegister("${regName}");
-            uint32_t dim1;
-            uint32_t dim2;
-            ${regType}* data = pRegister->getRefArray2D<${regType}>(dim1, dim2);
-            std::vector<${enumName}::${enumName}> ${regName};
-            for(uint32_t i = 0; i < dim1 * dim2; ++i)
-            {
-                ${regName}.push_back(static_cast<${enumName}::${enumName}>(*(data + i)));
-            }
-            pDevice->${fesaFieldName}.set(${regName}.data(), dim1, dim2, pContext);
-        }
-""")
-cGetCustomArray2DRegData = string.Template("""
-        {
-            auto& pRegister = pPLCDevice->getRegister("${regName}");
-            uint32_t dim1;
-            uint32_t dim2;
-            ${regType}* arrData = pRegister->getRefArray2D<${regType}>(dim1, dim2);
-            std::vector<${enumName}::${enumName}> ${regName};
-            for(uint32_t i = 0; i < dim1 * dim2; ++i)
-            {
-                ${regName}.push_back(static_cast<${enumName}::${enumName}>(*(arrData + i)));
-            }
-            data.set${fesaFieldName_upper}(${regName}.data(), dim1, dim2);
-        }
-""")
-cGetUnsignedArray2DReg = string.Template("""
-        {
-            auto& pRegister = pPLCDevice->getRegister("${regName}");
-            uint32_t dim1;
-            uint32_t dim2;
-            ${regType}* data = pRegister->getRefArray2D<${regType}>(dim1, dim2);
-            std::vector<${fesaType}> ${regName}(data, data + dim1 * dim2);
-            pDevice->${fesaFieldName}.set(${regName}.data(), dim1, dim2, pContext);
-        }
-""")
-cGetUnsignedArray2DRegData = string.Template("""
-        {
-            auto& pRegister = pPLCDevice->getRegister("${regName}");
-            uint32_t dim1;
-            uint32_t dim2;
-            ${regType}* arrData = pRegister->getRefArray2D<${regType}>(dim1, dim2);
-            std::vector<${fesaType}> ${regName}(arrData, arrData + dim1 * dim2);
-            data.set${fesaFieldName_upper}(${regName}.data(), dim1, dim2);
-        }
-""")
-
-cGetUnsignedArrayReg = string.Template("""
-        {
-            auto& pRegister = pPLCDevice->getRegister("${regName}");
-            uint32_t dim1;
-            ${regType}* data = pRegister->getRefArray<${regType}>(dim1);
-            std::vector<${fesaType}> ${regName}(data, data + dim1);
-            pDevice->${fesaFieldName}.set(${regName}.data(), dim1, pContext);
-        }
-    """)
-
-cGetUnsignedArrayRegData = string.Template("""
-        {
-            auto& pRegister = pPLCDevice->getRegister("${regName}");
-            uint32_t dim1;
-            ${regType}* arrData = pRegister->getRefArray<${regType}>(dim1);
-            std::vector<${fesaType}> ${regName}(arrData, arrData + dim1);
-            data.set${fesaFieldName_upper}(${regName}.data(), dim1);
-        }
-    """)
-
-
-
 cCommonSet = string.Template("""    
     void ${blockName}_Type::setOneDevice(Device* pDevice, const bool sendNow, MultiplexingContext* pContext)
     {
@@ -681,179 +528,16 @@ cSetStringReg = string.Template("""
         pPLCDevice->getRegister("${regName}")->setVal<std::string>(pDevice->${fesaFieldName}.get(${context}));
 """)
 
-cSetStringArrayReg = string.Template("""
-        {
-            auto& pRegister = pPLCDevice->getRegister("${regName}");
-            uint32_t dim1 = pRegister->getDimension1();
-            std::string stdStringArray[dim1];
-            uint32_t fesaDim1;
-            const char* const* cStringArray = pDevice->${fesaFieldName}.get(fesaDim1${context});
-            for (unsigned int i=0; i<dim1; i++) stdStringArray[i] = (const char*)cStringArray[i];
-            pRegister->setValArray<std::string>(stdStringArray, dim1);
-        }
-""")
-
 cSetScalarReg = string.Template("""
         pPLCDevice->getRegister("${regName}")->setVal<${regType}>( ${cCast}pDevice->${fesaFieldName}.get(${context}));""")
-            
-cSetArrayReg = string.Template("""
-        {
-            auto& pRegister = pPLCDevice->getRegister("${regName}");
-            uint32_t dim1 = pRegister->getDimension1();
-            uint32_t fesaDim1;
-            pRegister->setValArray<${regType}>(pDevice->${fesaFieldName}.get(fesaDim1${context}), dim1);
-        }
-    """)
-
-cSetCustomArrayReg = string.Template("""
-        {
-            auto& pRegister = pPLCDevice->getRegister("${regName}");
-            uint32_t dim1 = pRegister->getDimension1();
-            uint32_t fesaDim1;
-            const ${enumName}::${enumName}* ${regName} = pDevice->${fesaFieldName}.get(fesaDim1${context});
-            std::vector<${regType}> data(${regName}, ${regName} + dim1);
-            pRegister->setValArray<${regType}>(data.data(), dim1);
-        }
-    """)
-
-cSetUnsignedArrayReg = string.Template("""
-        {
-            auto& pRegister = pPLCDevice->getRegister("${regName}");
-            uint32_t fesaDim1;
-            const ${fesaType}* ${regName} = pDevice->${fesaFieldName}.get(fesaDim1${context});
-            uint32_t dim1 = pRegister->getDimension1();
-            std::vector<${regType}> data(${regName}, ${regName} + dim1);
-            pRegister->setValArray<${regType}>(data.data(), dim1);
-        }
-    """)
-
-cSetArray2DReg = string.Template("""
-        {
-            auto& pRegister = pPLCDevice->getRegister("${regName}");
-            uint32_t dim1 = pRegister->getDimension1();
-            uint32_t dim2 = pRegister->getDimension2();
-            uint32_t fesaDim1,fesaDim2;
-            pRegister->setValArray2D<${regType}>(pDevice->${fesaFieldName}.get(fesaDim1, fesaDim2${context}), dim1, dim2);
-        }
-""")
-
-cSetCustomArray2DReg = string.Template("""
-        {
-            auto& pRegister = pPLCDevice->getRegister("${regName}");
-            uint32_t dim1 = pRegister->getDimension1();
-            uint32_t dim2 = pRegister->getDimension2();
-            uint32_t fesaDim1,fesaDim2;
-            const ${enumName}::${enumName}* ${regName} = pDevice->${fesaFieldName}.get(fesaDim1, fesaDim2${context});
-            std::vector<${regType}> data(${regName}, ${regName} + dim1 * dim2);
-            pRegister->setValArray2D<${regType}>(data.data(), dim1, dim2);
-        }
-""")
-                                 
-cSetUnsignedArray2DReg = string.Template("""
-        {
-            auto& pRegister = pPLCDevice->getRegister("${regName}");
-            uint32_t dim1 = pRegister->getDimension1();
-            uint32_t dim2 = pRegister->getDimension2();
-            uint32_t fesaDim1,fesaDim2;
-            const ${fesaType}* ${regName} = pDevice->${fesaFieldName}.get(fesaDim1, fesaDim2${context});
-            std::vector<${regType}> data(${regName}, ${regName} + dim1 * dim2);
-            pRegister->setValArray2D<${regType}>(data.data(), dim1, dim2);
-        }
-""")
 
 cSetStringRegData = string.Template("""
         (data.is${fesaFieldName_upper}Available()) ? pPLCDevice->getRegister("${regName}")->setVal<std::string>(data.${fesaFieldName}.get()) :
                                      pPLCDevice->getRegister("${regName}")->setVal<std::string>(pDevice->${fesaFieldName}.get(${context}));""")
-                                    
-cSetStringArrayRegData = string.Template("""
-        {
-            auto& pRegister = pPLCDevice->getRegister("${regName}");
-            uint32_t dim1 = pRegister->getDimension1();
-            std::string stdStringArray[dim1];
-            uint32_t fesaDim1;
-            const char* const* cStringArray = (data.is${fesaFieldName_upper}Available() ? data.${fesaFieldName}.get(fesaDim1) : pDevice->${fesaFieldName}.get(fesaDim1${context}));
-            for (unsigned int i=0; i<dim1; i++) stdStringArray[i] = (const char*)cStringArray[i];
-            pRegister->setValArray<std::string>(stdStringArray, dim1);
-        }
-""")
 
 cSetScalarRegData = string.Template("""
         (data.is${fesaFieldName_upper}Available()) ? pPLCDevice->getRegister("${regName}")->setVal<${regType}>( ${cCast}data.${fesaFieldName}.get()) :
                                           pPLCDevice->getRegister("${regName}")->setVal<${regType}>( ${cCast}pDevice->${fesaFieldName}.get(${context}));""")
-cSetArrayRegData = string.Template("""
-        {
-            auto& pRegister = pPLCDevice->getRegister("${regName}");
-            uint32_t dim1 = pRegister->getDimension1();
-            uint32_t fesaDim1;
-            (data.is${fesaFieldName_upper}Available()) ? pRegister->setValArray<${regType}>( data.${fesaFieldName}.get(fesaDim1), dim1) :
-                                        pRegister->setValArray<${regType}>( pDevice->${fesaFieldName}.get(fesaDim1${context}), dim1);
-        }
-    """)
-
-cSetUnsignedArrayRegData = string.Template("""
-        {
-            auto& pRegister = pPLCDevice->getRegister("${regName}");
-            uint32_t dim1 = pRegister->getDimension1();
-            uint32_t fesaDim1;
-            const ${fesaType}* ${regName};
-            (data.is${fesaFieldName_upper}Available()) ? ${regName} = data.${fesaFieldName}.get(fesaDim1) :
-                                        ${regName} = pDevice->${fesaFieldName}.get(fesaDim1${context});
-            std::vector<${regType}> data(${regName}, ${regName} + dim1);
-            pRegister->setValArray<${regType}>(data.data(), dim1);
-        }
-    """)
-
-cSetCustomArrayRegData = string.Template("""
-        {
-            auto& pRegister = pPLCDevice->getRegister("${regName}");
-            uint32_t dim1 = pRegister->getDimension1();
-            uint32_t fesaDim1;
-            const ${enumName}::${enumName}* ${regName};
-            (data.is${fesaFieldName_upper}Available()) ? ${regName} = data.${fesaFieldName}.get(fesaDim1) :
-                                        ${regName} = pDevice->${fesaFieldName}.get(fesaDim1${context});
-            std::vector<${regType}> data(${regName}, ${regName} + dim1);
-            pRegister->setValArray<${regType}>(data.data(), dim1);
-        }
-    """)
-
-cSetArray2DRegData = string.Template("""
-        {
-            auto& pRegister = pPLCDevice->getRegister("${regName}");
-            uint32_t dim1 = pRegister->getDimension1();
-            uint32_t dim2 = pRegister->getDimension2();
-            uint32_t fesaDim1,fesaDim2;
-            (data.is${fesaFieldName_upper}Available()) ? pRegister->setValArray2D<${regType}>(data.${fesaFieldName}.get(fesaDim1, fesaDim2), dim1, dim2) :
-                                         pRegister->setValArray2D<${regType}>(pDevice->${fesaFieldName}.get(fesaDim1, fesaDim2${context}), dim1, dim2);
-        }
-""")
-
-cSetUnsignedArray2DRegData = string.Template("""
-        {
-            auto& pRegister = pPLCDevice->getRegister("${regName}");
-            uint32_t dim1 = pRegister->getDimension1();
-            uint32_t dim2 = pRegister->getDimension2();
-            uint32_t fesaDim1,fesaDim2;
-            const ${fesaType}* ${regName};
-            (data.is${fesaFieldName_upper}Available()) ? ${regName} = data.${fesaFieldName}.get(fesaDim1, fesaDim2) :
-                                        ${regName} = pDevice->${fesaFieldName}.get(fesaDim1, fesaDim2${context});
-            std::vector<${regType}> data(${regName}, ${regName} + dim1 * dim2);
-            pRegister->setValArray2D<${regType}>(data.data(), dim1, dim2);
-        }
-""")
-
-cSetCustomArray2DRegData = string.Template("""
-        {
-            auto& pRegister = pPLCDevice->getRegister("${regName}");
-            uint32_t dim1 = pRegister->getDimension1();
-            uint32_t dim2 = pRegister->getDimension2();
-            uint32_t fesaDim1,fesaDim2;
-            const ${enumName}::${enumName}* ${regName};
-            (data.is${fesaFieldName_upper}Available()) ? ${regName} = data.${fesaFieldName}.get(fesaDim1, fesaDim2) :
-                                        ${regName} = pDevice->${fesaFieldName}.get(fesaDim1, fesaDim2${context});
-            std::vector<${regType}> data(${regName}, ${regName} + dim1 * dim2);
-            pRegister->setValArray2D<${regType}>(data.data(), dim1, dim2);
-        }
-""")
 
 makeDesign = """# Include SILECS makefile
 include Makefile.silecs
-- 
GitLab