private int getCASDU(Foglia f) { int retvalue, tmp; string CASDUTOT = f["CASDU (totale)"]; if (CASDUTOT != null && CASDUTOT != "") return Int32.TryParse(CASDUTOT, out retvalue) ? retvalue : -1; string CASDU1 = f["CASDU 1"], CASDU2 = f["CASDU 2"]; if (CASDU1 == null || CASDU2 == null) return -1; if (!Int32.TryParse(CASDU1, out tmp)) return -1; retvalue = tmp; if (!Int32.TryParse(CASDU2, out tmp)) return -1; retvalue += tmp << 24; return retvalue; }
public override Nodo Clone() { Foglia f = new Foglia(name, null, true); f.propertyDefinitions = propertyDefinitions; f.protocolname = protocolname; f.abilitazione = abilitazione; f.propertyValues = (PropertyList)propertyValues.Clone(); return f; }
//TODO: Controllare nelle variabili per copia che la variabile sorgente esista davvero. //TODO: Da controllare nel Modbus che la variabile sia dentro il Frame private int getIOA(Foglia f) { int retvalue, tmp; string IOATOT = f["IOA (totale)"]; if (IOATOT != null && IOATOT != "") return Int32.TryParse(IOATOT, out retvalue) ? retvalue : -1; string IOA1 = f["IOA 1"], IOA2 = f["IOA 2"], IOA3 = f["IOA 3"]; if (IOA1 == null || IOA2 == null || IOA3 == null) return -1; if (!Int32.TryParse(IOA1, out tmp)) return -1; retvalue = tmp; if (!Int32.TryParse(IOA2, out tmp)) return -1; retvalue += tmp * 256; if (!Int32.TryParse(IOA3, out tmp)) return -1; retvalue += tmp * 256 * 256; return retvalue; }