diff --git a/dotnet/IEC61850forCSharp/IEC61850ServerAPI.cs b/dotnet/IEC61850forCSharp/IEC61850ServerAPI.cs index 0e83d35e..02b19d09 100644 --- a/dotnet/IEC61850forCSharp/IEC61850ServerAPI.cs +++ b/dotnet/IEC61850forCSharp/IEC61850ServerAPI.cs @@ -267,6 +267,9 @@ namespace IEC61850 [DllImport("iec61850", CallingConvention = CallingConvention.Cdecl)] static extern IntPtr CDC_APC_create(string name, IntPtr parent, uint options, uint controlOptions, [MarshalAs(UnmanagedType.I1)] bool isIntegerNotFloat); + + [DllImport("iec61850", CallingConvention = CallingConvention.Cdecl)] + static extern IntPtr CDC_BCR_create(string name, IntPtr parent, uint options); public const int CDC_OPTION_DESC = (1 << 2); public const int CDC_OPTION_DESC_UNICODE = (1 << 3); @@ -375,6 +378,16 @@ namespace IEC61850 else return null; } + + public static DataObject Create_CDC_BCR(ModelNode parent, string name, uint options) + { + IntPtr self = CDC_BCR_create(name, parent.self, options); + + if (self != IntPtr.Zero) + return new DataObject(self); + else + return null; + } } public class DataObject : ModelNode