Пример #1
0
 public void Dispose()
 {
     bar_destroy(_bar);
     if (IntPtr.Zero != _ibar)
     {
         ibar_destroy(_ibar);
         _ibar          = IntPtr.Zero;
         _ibar_callback = null;
     }
 }
Пример #2
0
        public void Register(IBar ibar)
        {
            if (IntPtr.Zero != _ibar)
            {
                ibar_destroy(_ibar);
                _ibar          = IntPtr.Zero;
                _ibar_callback = null;
            }

            _ibar_callback = ibar.GetNumber;
            _ibar          = ibar_create(_ibar_callback);

            if (_ibar == IntPtr.Zero)
            {
                throw new OutOfMemoryException();
            }

            bar_register(_bar, _ibar);
        }
Пример #3
0
 static extern IntPtr ibar_create(ibar_get_number_callback callback);