示例#1
0
 public unsafe StorageStatistics GetStatistics(StorageStatisticsFlags grfStatFlag)
 {
     StorageStatistics.__Native @ref = new StorageStatistics.__Native();
       // ISSUE: cast to a function pointer type
       // ISSUE: function pointer call
       Result result = (Result) (__calli((__FnPtr<int (void*, void*, int)>) *(IntPtr*) (*(IntPtr*) this._nativePointer + IntPtr(12) * sizeof (void*)))((int) this._nativePointer, (void*) &@ref, (void*) grfStatFlag));
       StorageStatistics storageStatistics = new StorageStatistics();
       storageStatistics.__MarshalFrom(ref @ref);
       result.CheckError();
       return storageStatistics;
 }
示例#2
0
        public unsafe StorageStatistics GetStatistics(StorageStatisticsFlags grfStatFlag)
        {
            StorageStatistics.__Native @ref = new StorageStatistics.__Native();
            // ISSUE: cast to a function pointer type
            // ISSUE: function pointer call
            Result            result            = (Result)(__calli((__FnPtr <int (void *, void *, int)>) * (IntPtr *)(*(IntPtr *)this._nativePointer + IntPtr(12) * sizeof(void *)))((int)this._nativePointer, (void *)&@ref, (void *)grfStatFlag));
            StorageStatistics storageStatistics = new StorageStatistics();

            storageStatistics.__MarshalFrom(ref @ref);
            result.CheckError();
            return(storageStatistics);
        }
示例#3
0
 internal void __MarshalTo(ref StorageStatistics.__Native @ref)
 {
     @ref.PwcsName          = this.PwcsName == null ? IntPtr.Zero : Utilities.StringToHGlobalUni(this.PwcsName);
     @ref.Type              = this.Type;
     @ref.CbSize            = this.CbSize;
     @ref.Mtime             = this.Mtime;
     @ref.Ctime             = this.Ctime;
     @ref.Atime             = this.Atime;
     @ref.GrfMode           = this.GrfMode;
     @ref.GrfLocksSupported = this.GrfLocksSupported;
     @ref.Clsid             = this.Clsid;
     @ref.GrfStateBits      = this.GrfStateBits;
     @ref.Reserved          = this.Reserved;
 }
示例#4
0
 internal void __MarshalFrom(ref StorageStatistics.__Native @ref)
 {
     this.PwcsName          = @ref.PwcsName == IntPtr.Zero ? (string)null : Marshal.PtrToStringUni(@ref.PwcsName);
     this.Type              = @ref.Type;
     this.CbSize            = @ref.CbSize;
     this.Mtime             = @ref.Mtime;
     this.Ctime             = @ref.Ctime;
     this.Atime             = @ref.Atime;
     this.GrfMode           = @ref.GrfMode;
     this.GrfLocksSupported = @ref.GrfLocksSupported;
     this.Clsid             = @ref.Clsid;
     this.GrfStateBits      = @ref.GrfStateBits;
     this.Reserved          = @ref.Reserved;
 }
示例#5
0
 private static Result StatImpl(IntPtr thisPtr, ref StorageStatistics.__Native statisticsPtr, StorageStatisticsFlags flags)
 {
     try
     {
         ((IStream)CppObjectShadow.ToShadow <ComStreamShadow>(thisPtr).Callback).GetStatistics(flags).__MarshalTo(ref statisticsPtr);
     }
     catch (SharpDXException ex)
     {
         return(ex.ResultCode);
     }
     catch (Exception ex)
     {
         return((Result)Result.Fail.Code);
     }
     return(Result.Ok);
 }
示例#6
0
 private static Result StatImpl(IntPtr thisPtr, ref StorageStatistics.__Native statisticsPtr, StorageStatisticsFlags flags)
 {
     try
     {
         var shadow     = ToShadow <ComStreamShadow>(thisPtr);
         var callback   = ((IStream)shadow.Callback);
         var statistics = callback.GetStatistics(flags);
         statistics.__MarshalTo(ref statisticsPtr);
     }
     catch (SharpDXException exception)
     {
         return(exception.ResultCode);
     }
     catch (Exception)
     {
         return(Result.Fail.Code);
     }
     return(Result.Ok);
 }
示例#7
0
 internal void __MarshalFree(ref StorageStatistics.__Native @ref)
 {
     @ref.__MarshalFree();
 }