Example #1
0
 public V8File(V8File ParentV8File)
 {
     this.IsDataPacked = true;
     Elems = new List<CV8Elem>();
     ElemsAddrs = new List<stElemAddr>();
     _objectId = Guid.NewGuid();
     OperationMode = ParentV8File.OperationMode;
     this._parentV8File = ParentV8File;
 }
Example #2
0
        internal BrowserWindow(string filename)
        {
            InitializeComponent();

            Utils.FormsSettingsManager.Register(this, "FileBrowser");

            m_FileImage  = new V8File(filename);
            m_OpenedDocs = new Dictionary <FileTreeItem, OpenedDocument>();
        }
Example #3
0
            private V8File(V8File ParentV8File, MemoryTributary pFileDataStream, int InflateSize, bool boolInflate = true, Mode OperationMode = Mode.Optimal)
            {
                BinaryReader binReader = new BinaryReader(pFileDataStream);

                this.IsDataPacked = true;
                Elems = new List<CV8Elem>();
                ElemsAddrs = new List<stElemAddr>();
                _objectId = Guid.NewGuid();
                this.OperationMode = OperationMode;
                this._parentV8File = ParentV8File;

                this.LoadFile(binReader, boolInflate);
            }
Example #4
0
            private bool disposedValue = false; // Для определения избыточных вызовов

            protected virtual void Dispose(bool disposing)
            {
                if (!disposedValue)
                {
                    if (disposing)
                    {
                        // TODO: освободить управляемое состояние (управляемые объекты).
                        this.Elems.Clear();
                        this.ElemsAddrs.Clear();                        
                        this._parentV8File = null;                        
                    }

                    // TODO: освободить неуправляемые ресурсы (неуправляемые объекты) и переопределить ниже метод завершения.
                    // TODO: задать большим полям значение NULL.

                    disposedValue = true;
                }
            }
Example #5
0
                public CV8Elem(MemoryTributary pHeader, UInt32 HeaderSize, MemoryTributary pData, UInt32 DataSize, V8File UnpackedData, bool IsV8File, bool NeedUnpack, bool useTempFiles = false)
                {
                    this.UnpackedData = UnpackedData;
                    this.IsV8File = IsV8File;
                    this.NeedUnpack = NeedUnpack;
                    this._objectId = Guid.NewGuid();

                    if (this.UnpackedData != null)
                    {
                        if (this.UnpackedData.OperationMode == Mode.FileSystem)
                            this.useTempFiles = true;
                        else if (this.UnpackedData.OperationMode == Mode.MemoryUsage)
                            this.useTempFiles = false;
                        else if (this.UnpackedData.OperationMode == Mode.Optimal)
                        {
                            if (this.DataSize > V8File.MAX_BLOCK_SIZE_IN_MEMORY_BYTES)
                                this.useTempFiles = true;
                            else
                                this.useTempFiles = false;
                        }
                        else
                            this.useTempFiles = false;
                    } else
                        this.useTempFiles = false;

                    if (!this.useTempFiles)
                        this.pHeader = pHeader.ToArray();
                    else
                    {
                        this.SetHeaderFromMemStream(pHeader);
                    }
                    this.HeaderSize = HeaderSize;

                    if(!this.useTempFiles)
                        this.pData = pData.ToArray();
                    else
                    {
                        this.SetDataFromMemStream(pData);
                    }
                    this.DataSize = DataSize;
                }
Example #6
0
                public CV8Elem(byte[] pHeader, UInt32 HeaderSize, byte[] pData, UInt32 DataSize, V8File UnpackedData, bool IsV8File, bool NeedUnpack, bool useTempFiles = false)
                {
                    this.UnpackedData = UnpackedData;                                                        
                    this.IsV8File = IsV8File;
                    this.NeedUnpack = NeedUnpack;                   
                    this._objectId = Guid.NewGuid();

                    if (this.UnpackedData != null)
                    {
                        if (this.UnpackedData.OperationMode == Mode.FileSystem)
                            this.useTempFiles = true;
                        else if (this.UnpackedData.OperationMode == Mode.MemoryUsage)
                            this.useTempFiles = false;
                        else if (this.UnpackedData.OperationMode == Mode.Optimal)
                        {
                            if (this.DataSize > V8File.MAX_BLOCK_SIZE_IN_MEMORY_BYTES)
                                this.useTempFiles = true;
                            else
                                this.useTempFiles = false;
                        }
                        else
                            this.useTempFiles = false;
                    } else
                        this.useTempFiles = false;

                    this.pHeader = pHeader;
                    this.HeaderSize = HeaderSize;
                    this.pData = pData;
                    this.DataSize = DataSize;
                }
Example #7
0
                public CV8Elem(V8File UnpackedData)
                {
                    this.UnpackedData = UnpackedData;
                    this.IsV8File = false;
                    this.HeaderSize = 0;
                    this.DataSize = 0;
                    this._objectId = Guid.NewGuid();

                    if (this.UnpackedData != null)
                    {
                        if (this.UnpackedData.OperationMode == Mode.FileSystem)
                            this.useTempFiles = true;
                        else if (this.UnpackedData.OperationMode == Mode.MemoryUsage)
                            this.useTempFiles = false;
                        else if (this.UnpackedData.OperationMode == Mode.Optimal)
                        {
                            if (this.DataSize > V8File.MAX_BLOCK_SIZE_IN_MEMORY_BYTES)
                                this.useTempFiles = true;
                            else
                                this.useTempFiles = false;
                        }
                        else
                            this.useTempFiles = false;
                    }
                    else
                        this.useTempFiles = false;
                }
Example #8
0
 public CV8Elem(byte[] pHeader, UInt32 HeaderSize, byte[] pData, UInt32 DataSize, V8File UnpackedData, bool IsV8File, bool NeedUnpack)
 {
     this.pHeader = pHeader;
     this.HeaderSize = HeaderSize;
     this.pData = pData;
     this.DataSize = DataSize;
     this.UnpackedData = UnpackedData;
     this.IsV8File = IsV8File;
     this.NeedUnpack = NeedUnpack;
 }