|
|
|
@ -65,7 +65,8 @@ namespace IEC61850
|
|
|
|
|
/// </returns>
|
|
|
|
|
public string GetReference()
|
|
|
|
|
{
|
|
|
|
|
if (reference == null) {
|
|
|
|
|
if (reference == null)
|
|
|
|
|
{
|
|
|
|
|
IntPtr nativeString = ClientDataSet_getReference(nativeObject);
|
|
|
|
|
|
|
|
|
|
reference = Marshal.PtrToStringAnsi(nativeString);
|
|
|
|
@ -85,7 +86,8 @@ namespace IEC61850
|
|
|
|
|
/// </returns>
|
|
|
|
|
public MmsValue GetValues()
|
|
|
|
|
{
|
|
|
|
|
if (values == null) {
|
|
|
|
|
if (values == null)
|
|
|
|
|
{
|
|
|
|
|
IntPtr nativeValues = ClientDataSet_getValues(nativeObject);
|
|
|
|
|
|
|
|
|
|
values = new MmsValue(nativeValues, false);
|
|
|
|
@ -108,8 +110,10 @@ namespace IEC61850
|
|
|
|
|
|
|
|
|
|
public void Dispose()
|
|
|
|
|
{
|
|
|
|
|
lock (this) {
|
|
|
|
|
if (nativeObject != IntPtr.Zero) {
|
|
|
|
|
lock (this)
|
|
|
|
|
{
|
|
|
|
|
if (nativeObject != IntPtr.Zero)
|
|
|
|
|
{
|
|
|
|
|
ClientDataSet_destroy(nativeObject);
|
|
|
|
|
nativeObject = IntPtr.Zero;
|
|
|
|
|
}
|
|
|
|
@ -118,7 +122,7 @@ namespace IEC61850
|
|
|
|
|
|
|
|
|
|
~DataSet()
|
|
|
|
|
{
|
|
|
|
|
ClientDataSet_destroy (nativeObject);
|
|
|
|
|
Dispose();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
internal IntPtr getNativeInstance()
|
|
|
|
|