|
|
|
@ -107,6 +107,13 @@ namespace IEC61850.Server
|
|
|
|
|
[return: MarshalAs(UnmanagedType.I1)]
|
|
|
|
|
static extern bool IedServerConfig_isLogServiceEnabled(IntPtr self);
|
|
|
|
|
|
|
|
|
|
[DllImport("iec61850", CallingConvention = CallingConvention.Cdecl)]
|
|
|
|
|
static extern void IedServerConfig_enableResvTmsForBRCB(IntPtr self, [MarshalAs(UnmanagedType.I1)] bool enable);
|
|
|
|
|
|
|
|
|
|
[DllImport("iec61850", CallingConvention = CallingConvention.Cdecl)]
|
|
|
|
|
[return: MarshalAs(UnmanagedType.I1)]
|
|
|
|
|
static extern bool IedServerConfig_isResvTmsForBRCBEnabled(IntPtr self);
|
|
|
|
|
|
|
|
|
|
internal IntPtr self;
|
|
|
|
|
|
|
|
|
|
public IedServerConfig()
|
|
|
|
@ -120,10 +127,12 @@ namespace IEC61850.Server
|
|
|
|
|
/// <value>The size of the report buffer.</value>
|
|
|
|
|
public int ReportBufferSize
|
|
|
|
|
{
|
|
|
|
|
get {
|
|
|
|
|
get
|
|
|
|
|
{
|
|
|
|
|
return IedServerConfig_getReportBufferSize(self);
|
|
|
|
|
}
|
|
|
|
|
set {
|
|
|
|
|
set
|
|
|
|
|
{
|
|
|
|
|
IedServerConfig_setReportBufferSize(self, value);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
@ -150,10 +159,12 @@ namespace IEC61850.Server
|
|
|
|
|
/// <value>The file service base path.</value>
|
|
|
|
|
public string FileServiceBasePath
|
|
|
|
|
{
|
|
|
|
|
get {
|
|
|
|
|
get
|
|
|
|
|
{
|
|
|
|
|
return Marshal.PtrToStringAnsi(IedServerConfig_getFileServiceBasePath(self));
|
|
|
|
|
}
|
|
|
|
|
set {
|
|
|
|
|
set
|
|
|
|
|
{
|
|
|
|
|
IedServerConfig_setFileServiceBasePath(self, value);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
@ -180,10 +191,12 @@ namespace IEC61850.Server
|
|
|
|
|
/// <value>The IEC 61850 edition to use.</value>
|
|
|
|
|
public Iec61850Edition Edition
|
|
|
|
|
{
|
|
|
|
|
get {
|
|
|
|
|
get
|
|
|
|
|
{
|
|
|
|
|
return (Iec61850Edition)IedServerConfig_getEdition(self);
|
|
|
|
|
}
|
|
|
|
|
set {
|
|
|
|
|
set
|
|
|
|
|
{
|
|
|
|
|
IedServerConfig_setEdition(self, (byte)value);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
@ -194,10 +207,12 @@ namespace IEC61850.Server
|
|
|
|
|
/// <value>The max number of MMS client connections.</value>
|
|
|
|
|
public int MaxMmsConnections
|
|
|
|
|
{
|
|
|
|
|
get {
|
|
|
|
|
get
|
|
|
|
|
{
|
|
|
|
|
return IedServerConfig_getMaxMmsConnections(self);
|
|
|
|
|
}
|
|
|
|
|
set {
|
|
|
|
|
set
|
|
|
|
|
{
|
|
|
|
|
IedServerConfig_setMaxMmsConnections(self, value);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
@ -208,10 +223,12 @@ namespace IEC61850.Server
|
|
|
|
|
/// <value><c>true</c> if dynamic data set service enabled; otherwise, <c>false</c>.</value>
|
|
|
|
|
public bool DynamicDataSetServiceEnabled
|
|
|
|
|
{
|
|
|
|
|
get {
|
|
|
|
|
get
|
|
|
|
|
{
|
|
|
|
|
return IedServerConfig_isDynamicDataSetServiceEnabled(self);
|
|
|
|
|
}
|
|
|
|
|
set {
|
|
|
|
|
set
|
|
|
|
|
{
|
|
|
|
|
IedServerConfig_enableDynamicDataSetService(self, value);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
@ -222,10 +239,12 @@ namespace IEC61850.Server
|
|
|
|
|
/// <value>The max. number data set entries.</value>
|
|
|
|
|
public int MaxDataSetEntries
|
|
|
|
|
{
|
|
|
|
|
get {
|
|
|
|
|
get
|
|
|
|
|
{
|
|
|
|
|
return IedServerConfig_getMaxDatasSetEntries(self);
|
|
|
|
|
}
|
|
|
|
|
set {
|
|
|
|
|
set
|
|
|
|
|
{
|
|
|
|
|
IedServerConfig_setMaxDataSetEntries(self, value);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
@ -236,10 +255,12 @@ namespace IEC61850.Server
|
|
|
|
|
/// <value>The max. number of association specific data sets.</value>
|
|
|
|
|
public int MaxAssociationSpecificDataSets
|
|
|
|
|
{
|
|
|
|
|
get {
|
|
|
|
|
get
|
|
|
|
|
{
|
|
|
|
|
return IedServerConfig_getMaxAssociationSpecificDataSets(self);
|
|
|
|
|
}
|
|
|
|
|
set {
|
|
|
|
|
set
|
|
|
|
|
{
|
|
|
|
|
IedServerConfig_setMaxAssociationSpecificDataSets(self, value);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
@ -250,10 +271,12 @@ namespace IEC61850.Server
|
|
|
|
|
/// <value>The max. numebr of domain specific data sets.</value>
|
|
|
|
|
public int MaxDomainSpecificDataSets
|
|
|
|
|
{
|
|
|
|
|
get {
|
|
|
|
|
get
|
|
|
|
|
{
|
|
|
|
|
return IedServerConfig_getMaxDomainSpecificDataSets(self);
|
|
|
|
|
}
|
|
|
|
|
set {
|
|
|
|
|
set
|
|
|
|
|
{
|
|
|
|
|
IedServerConfig_setMaxDomainSpecificDataSets(self, value);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
@ -274,6 +297,22 @@ namespace IEC61850.Server
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Enable/Disable the presence of ResvTms attribute in BRCBs (buffered report control blocks)
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <value><c>true</c> if BRCB has ResvTms; otherwise, <c>false</c>.</value>
|
|
|
|
|
public bool BRCBHasResvTms
|
|
|
|
|
{
|
|
|
|
|
get
|
|
|
|
|
{
|
|
|
|
|
return IedServerConfig_isResvTmsForBRCBEnabled(self);
|
|
|
|
|
}
|
|
|
|
|
set
|
|
|
|
|
{
|
|
|
|
|
IedServerConfig_enableResvTmsForBRCB(self, value);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Releases all resource used by the <see cref="IEC61850.Server.IedServerConfig"/> object.
|
|
|
|
|
/// </summary>
|
|
|
|
@ -284,8 +323,10 @@ namespace IEC61850.Server
|
|
|
|
|
/// <see cref="IEC61850.Server.IedServerConfig"/> was occupying.</remarks>
|
|
|
|
|
public void Dispose()
|
|
|
|
|
{
|
|
|
|
|
lock (this) {
|
|
|
|
|
if (self != IntPtr.Zero) {
|
|
|
|
|
lock (this)
|
|
|
|
|
{
|
|
|
|
|
if (self != IntPtr.Zero)
|
|
|
|
|
{
|
|
|
|
|
IedServerConfig_destroy(self);
|
|
|
|
|
self = IntPtr.Zero;
|
|
|
|
|
}
|
|
|
|
|