Example #1
0
 private string ControlledObjectToString(uint deviceAddress, BACnetDeviceObjectPropertyReference propertyReference)
 {
     var objId = new Regex(@"[a-z]+").Replace(propertyReference.ObjectId.ToString().Split('.')[0], "");
     if (propertyReference.DeviceId == null)
     {
         return deviceAddress + "." + objId + propertyReference.ObjectId.Instance;
     }
     return propertyReference.DeviceId.Instance + "." + objId + propertyReference.ObjectId.Instance;
 }
Example #2
0
        private string ControlledObjectToString(uint deviceAddress, BACnetDeviceObjectPropertyReference propertyReference)
        {
            var objId = new Regex(@"[a-z]+").Replace(propertyReference.ObjectId.ToString().Split('.')[0], "");

            if (propertyReference.DeviceId == null)
            {
                return(deviceAddress + "." + objId + propertyReference.ObjectId.Instance);
            }
            return(propertyReference.DeviceId.Instance + "." + objId + propertyReference.ObjectId.Instance);
        }
Example #3
0
        private BACnetDeviceObjectPropertyReference GetPropertyReferensFromString(string obj)
        {
            var    res     = new BACnetDeviceObjectPropertyReference();
            string devAddr = string.Empty;
            string objAddress;
            int    devAddress = 0;

            if (obj.Contains("."))
            {
                devAddr = obj.Split('.')[0];
                int.TryParse(devAddr, out devAddress);
                objAddress = obj.Split('.')[1];
            }
            else
            {
                objAddress = obj;
            }

            var objType = new Regex(@"[a-z\-A-Z]+").Match(objAddress).Value;
            var objNum  = new Regex(@"[0-9]+").Match(objAddress).Value;

            int objNumber;

            int.TryParse(objNum, out objNumber);

            if (!string.IsNullOrWhiteSpace(devAddr))
            {
                res.DeviceId = new BACnetObjectId((int)BacnetObjectType.Device, devAddress, 3);
            }
            res.ObjectId.Instance = objNumber;
            res.PropertyId        = new BACnetEnumerated((int)BacnetPropertyId.PresentValue, 1);

            objType = objType.ToUpper();
            switch (objType)
            {
            case "AI":
                res.ObjectId.ObjectType = (int)BacnetObjectType.AnalogInput;
                break;

            case "AO":
                res.ObjectId.ObjectType = (int)BacnetObjectType.AnalogOutput;
                break;

            case "AV":
                res.ObjectId.ObjectType = (int)BacnetObjectType.AnalogValue;
                break;

            case "BI":
                res.ObjectId.ObjectType = (int)BacnetObjectType.BinaryInput;
                break;

            case "BO":
                res.ObjectId.ObjectType = (int)BacnetObjectType.BinaryOutput;
                break;

            case "BV":
                res.ObjectId.ObjectType = (int)BacnetObjectType.BinaryValue;
                break;

            case "MI":
                res.ObjectId.ObjectType = (int)BacnetObjectType.MultiStateInput;
                break;

            case "MO":
                res.ObjectId.ObjectType = (int)BacnetObjectType.MultiStateOutput;
                break;

            case "MV":
                res.ObjectId.ObjectType = (int)BacnetObjectType.MultiStateValue;
                break;
            }
            return(res);
        }
Example #4
0
        private BACnetDeviceObjectPropertyReference GetPropertyReferensFromString(string obj)
        {
            var res = new BACnetDeviceObjectPropertyReference();
            string devAddr = string.Empty;
            string objAddress;
            int devAddress = 0;
            if (obj.Contains("."))
            {
                devAddr = obj.Split('.')[0];
                int.TryParse(devAddr, out devAddress);
                objAddress = obj.Split('.')[1];
            }
            else
                objAddress = obj;

            var objType = new Regex(@"[a-z\-A-Z]+").Match(objAddress).Value;
            var objNum = new Regex(@"[0-9]+").Match(objAddress).Value;

            int objNumber;
            int.TryParse(objNum, out objNumber);

            if (!string.IsNullOrWhiteSpace(devAddr))
                res.DeviceId = new BACnetObjectId((int)BacnetObjectType.Device, devAddress, 3);
            res.ObjectId.Instance = objNumber;
            res.PropertyId = new BACnetEnumerated((int)BacnetPropertyId.PresentValue, 1);

            objType = objType.ToUpper();
            switch (objType)
            {
                case "AI":
                    res.ObjectId.ObjectType = (int)BacnetObjectType.AnalogInput;
                    break;
                case "AO":
                    res.ObjectId.ObjectType = (int)BacnetObjectType.AnalogOutput;
                    break;
                case "AV":
                    res.ObjectId.ObjectType = (int)BacnetObjectType.AnalogValue;
                    break;
                case "BI":
                    res.ObjectId.ObjectType = (int)BacnetObjectType.BinaryInput;
                    break;
                case "BO":
                    res.ObjectId.ObjectType = (int)BacnetObjectType.BinaryOutput;
                    break;
                case "BV":
                    res.ObjectId.ObjectType = (int)BacnetObjectType.BinaryValue;
                    break;
                case "MI":
                    res.ObjectId.ObjectType = (int)BacnetObjectType.MultiStateInput;
                    break;
                case "MO":
                    res.ObjectId.ObjectType = (int)BacnetObjectType.MultiStateOutput;
                    break;
                case "MV":
                    res.ObjectId.ObjectType = (int)BacnetObjectType.MultiStateValue;
                    break;
            }
            return res;
        }