/* * Copyright (c) 2018 iTAC Software AG, Germany. All Rights Reserved. * * This software is protected by copyright. Under no circumstances may any part of this file in any form be copied, * printed, edited or otherwise distributed, be stored in a retrieval system, or be translated into another language * without the written permission of iTAC Software AG. */ // created 05.11.2018 15:39:46 // skip property ExtensionDataObject, declared in PrinterPreSPCData // skip property PrinterSPCFiducial[], property in exclude list using System; using System.Collections.Generic; namespace com.itac.oib.traceability.contracts.data { // source: assembly 3.0.0.0 // source: assembly ASM.AS.OIB.Client public class PrinterPreSPCDataMapper { // used for itac->asm: True // used for asm->itac: True // maps iTAC namespace conform type to ASM namespace type public static www.siplace.com.OIB._2012._03.Traceability.Contracts.Data.PrinterPreSPCData get(PrinterPreSPCData itacPrinterPreSPCData) { if (itacPrinterPreSPCData == null) { return null; } www.siplace.com.OIB._2012._03.Traceability.Contracts.Data.PrinterPreSPCData asmPrinterPreSPCData = new www.siplace.com.OIB._2012._03.Traceability.Contracts.Data.PrinterPreSPCData(); mapItac2Asm(asmPrinterPreSPCData, itacPrinterPreSPCData); return asmPrinterPreSPCData; } public static void mapItac2Asm(www.siplace.com.OIB._2012._03.Traceability.Contracts.Data.PrinterPreSPCData asmPrinterPreSPCData, PrinterPreSPCData itacPrinterPreSPCData) { // skip property ExtensionDataObject, declared in PrinterPreSPCData asmPrinterPreSPCData.ActYRelMove = itacPrinterPreSPCData.ActYRelMove; // skip property PrinterSPCFiducial[], property in exclude list asmPrinterPreSPCData.FrontXActRelMove = itacPrinterPreSPCData.FrontXActRelMove; asmPrinterPreSPCData.PreBoardStretch = itacPrinterPreSPCData.PreBoardStretch; asmPrinterPreSPCData.RearXActRelMove = itacPrinterPreSPCData.RearXActRelMove; asmPrinterPreSPCData.ThetaPreAlignDev = itacPrinterPreSPCData.ThetaPreAlignDev; asmPrinterPreSPCData.XPreAlignDev = itacPrinterPreSPCData.XPreAlignDev; asmPrinterPreSPCData.YPreAlignDev = itacPrinterPreSPCData.YPreAlignDev; } // maps iTAC namespace conform array to ASM namespace array public static www.siplace.com.OIB._2012._03.Traceability.Contracts.Data.PrinterPreSPCData[] get(PrinterPreSPCData[] itacPrinterPreSPCData) { if (itacPrinterPreSPCData == null) { return null; } www.siplace.com.OIB._2012._03.Traceability.Contracts.Data.PrinterPreSPCData[] asmPrinterPreSPCData = new www.siplace.com.OIB._2012._03.Traceability.Contracts.Data.PrinterPreSPCData[itacPrinterPreSPCData.Length]; for (int i = 0; i < itacPrinterPreSPCData.Length; i++) { // to itac array asmPrinterPreSPCData[i] = PrinterPreSPCDataMapper.get(itacPrinterPreSPCData[i]); } return asmPrinterPreSPCData; } // maps iTAC namespace conform array to ASM namespace list public static List getList(PrinterPreSPCData[] asmPrinterPreSPCData) { if (asmPrinterPreSPCData == null) { return null; } List itacPrinterPreSPCData = new List(); for (int i = 0; i < asmPrinterPreSPCData.Length; i++) { itacPrinterPreSPCData.Add(PrinterPreSPCDataMapper.get(asmPrinterPreSPCData[i])); } return itacPrinterPreSPCData; } // map type from ASM namespace to iTAC namespace public static PrinterPreSPCData get(www.siplace.com.OIB._2012._03.Traceability.Contracts.Data.PrinterPreSPCData asmPrinterPreSPCData) { if (asmPrinterPreSPCData == null) { return null; } PrinterPreSPCData itacPrinterPreSPCData = new PrinterPreSPCData(); mapAsm2Itac(asmPrinterPreSPCData, itacPrinterPreSPCData); return itacPrinterPreSPCData; } public static void mapAsm2Itac(www.siplace.com.OIB._2012._03.Traceability.Contracts.Data.PrinterPreSPCData asmPrinterPreSPCData, PrinterPreSPCData itacPrinterPreSPCData) { // skip property ExtensionDataObject, declared in PrinterPreSPCData itacPrinterPreSPCData.ActYRelMove = asmPrinterPreSPCData.ActYRelMove; // skip property PrinterSPCFiducial[], property in exclude list itacPrinterPreSPCData.FrontXActRelMove = asmPrinterPreSPCData.FrontXActRelMove; itacPrinterPreSPCData.PreBoardStretch = asmPrinterPreSPCData.PreBoardStretch; itacPrinterPreSPCData.RearXActRelMove = asmPrinterPreSPCData.RearXActRelMove; itacPrinterPreSPCData.ThetaPreAlignDev = asmPrinterPreSPCData.ThetaPreAlignDev; itacPrinterPreSPCData.XPreAlignDev = asmPrinterPreSPCData.XPreAlignDev; itacPrinterPreSPCData.YPreAlignDev = asmPrinterPreSPCData.YPreAlignDev; } // maps ASM namespace conform list to iTAC namespace array public static PrinterPreSPCData[] getArray(IList asmPrinterPreSPCData) { if (asmPrinterPreSPCData == null) { return null; } PrinterPreSPCData[] itacPrinterPreSPCData = new PrinterPreSPCData[asmPrinterPreSPCData.Count]; for (int i = 0; i < asmPrinterPreSPCData.Count; i++) { itacPrinterPreSPCData[i] = PrinterPreSPCDataMapper.get(asmPrinterPreSPCData[i]); } return itacPrinterPreSPCData; } // maps ASM namespace conform array to iTAC namespace array public static PrinterPreSPCData[] getArray(www.siplace.com.OIB._2012._03.Traceability.Contracts.Data.PrinterPreSPCData[] asmPrinterPreSPCData) { if (asmPrinterPreSPCData == null) { return null; } PrinterPreSPCData[] itacPrinterPreSPCData = new PrinterPreSPCData[asmPrinterPreSPCData.Length]; for (int i = 0; i < asmPrinterPreSPCData.Length; i++) { itacPrinterPreSPCData[i] = PrinterPreSPCDataMapper.get(asmPrinterPreSPCData[i]); } return itacPrinterPreSPCData; } } }