public BitmapBufferTextureHandler(BitmapBufferResponse response) { frameBufferThread = new Thread(FrameBufferThread); frameBufferThread.Start(response.FrameInfoBufferName); bitmapBuffer = new BufferReadWrite(response.BitmapBufferName); }
public void ShutDown() { _isInitialized = false; _sharedMemory.Close(); _sharedMemory = null; _header = null; }
public Header(BufferReadWrite sharedMemory, int offset = 0) : base(sharedMemory, offset) { for (var i = 0; i < NumberOfBuffers(this); i++) { VarBuffers.Add(new VariableBuffer(sharedMemory, 48 + i * 16)); } }
public static void Close() { if (_sharedMemory != null) { _sharedMemory.Close(); _sharedMemory = null; } }
private void backgroundWorkerRun_DoWork(object sender, DoWorkEventArgs e) { UserControlBufferReadWrite uc = this.FindParent <UserControlBufferReadWrite>(); buffer = uc.buffer; buffer.Perform(Stop); this.InvokeIfNeeded(() => { Set(false); }); }
public void Constructor_ProducerConsumer_Created() { var name = Guid.NewGuid().ToString(); using (var buf = new BufferReadWrite(name, 1024)) using (var buf2 = new BufferReadWrite(name)) { } }
private void button_BufferReadWrite_Read_Click(object sender, EventArgs e) { var buffer = new BufferReadWrite("MySharedBuffer"); int readData; buffer.Read(out readData); richTextBox1.AppendText(String.Format("SharedMemory.BufferReadWrite(Read): {0}\n", readData)); }
internal void ShowIndicators() { UserControlBufferReadWrite uc = this.FindParent <UserControlBufferReadWrite>(); buffer = uc.buffer; Labels.BufferReadWriteLabel l = this.FindParent <Labels.BufferReadWriteLabel>(); Dictionary <string, IMeasurement> mm = buffer.Measurements; indicatorWrapper.Show(buffer, mm.Values, l.sizes); }
public bool StartUp() { _sharedMemory = new BufferReadWrite(MEMORY_FILE, MEMORY_SIZE); if (_sharedMemory == null) { return(false); } _header = new Header(_sharedMemory); _isInitialized = _header.Version(_header) >= 1 && _header.VarBuffers.Count > 0; return(_isInitialized); }
private void toolStripButtonPlusType_Click(object sender, EventArgs e) { UserControlBufferReadWrite uc = this.FindParent <UserControlBufferReadWrite>(); buffer = uc.buffer; FillTypes(); Set(true); Dictionary <string, IMeasurement> mm = buffer.Measurements; wrapper = new DisassemblyWrapper(mm.Keys, buffer, StaticExtensionDataPerformerUI.Disassembly); backgroundWorkerRun.RunWorkerAsync(); }
private void BuildBitmapBuffer(System.Drawing.Size size) { var oldBitmapBuffer = bitmapBuffer; var bitmapBufferName = $"BrowserHostBitmapBuffer{Guid.NewGuid()}"; bitmapBuffer = new BufferReadWrite(bitmapBufferName, size.Width * size.Height * bytesPerPixel); // Mark the old buffer for disposal if (oldBitmapBuffer != null) { obsoleteBuffers.Add(oldBitmapBuffer); } }
public static bool Connect() { try { _sharedMemory = new BufferReadWrite(MemoryName); } catch { _sharedMemory = null; return(false); } return(true); }
public void ReadWrite_TimeoutException() { bool timedout = false; var name = Guid.NewGuid().ToString(); byte[] data = new byte[1024]; byte[] readData = new byte[1024]; using (var buf = new BufferReadWrite(name, 1024)) using (var buf2 = new BufferReadWrite(name)) { // Set a small timeout to speed up the test buf2.ReadWriteTimeout = 0; // Introduce possible deadlock by acquiring without releasing the write lock. buf.AcquireWriteLock(); // We want the AcquireReadLock to fail if (!buf2.AcquireReadLock(1)) { try { // Read should timeout with TimeoutException because buf.ReleaseWriteLock has not been called buf2.Read(readData); } catch (TimeoutException) { timedout = true; } } Assert.AreEqual(true, timedout, "The TimeoutException was not thrown."); // Remove the deadlock situation, by releasing the write lock... buf.ReleaseWriteLock(); // ...and ensure that we can now read the data if (buf.AcquireReadLock(1)) { buf2.Read(readData); } else { Assert.Fail("Failed to acquire read lock after releasing write lock."); } } }
public static void Create() { try { _sharedMemory = new BufferReadWrite(MemoryName, MemorySize); State = 0; StringBuf = "null"; } catch (IOException e) // try connect { _sharedMemory = new BufferReadWrite(MemoryName); } catch (Exception e) { _sharedMemory = null; throw e; } }
public void ReadWrite_Bytes_DataMatches() { var name = Guid.NewGuid().ToString(); Random r = new Random(); byte[] data = new byte[1024]; byte[] readData = new byte[1024]; r.NextBytes(data); using (var buf = new BufferReadWrite(name, 1024)) using (var buf2 = new BufferReadWrite(name)) { buf.Write(data); buf2.Read(readData); for (var i = 0; i < data.Length; i++) { Assert.AreEqual(data[i], readData[i]); } } }
public SDKStruct(BufferReadWrite sharedMemory, int offset = 0) { this.sharedMemory = sharedMemory; this.offset = offset; }
public VariableBuffer(BufferReadWrite sharedMemory, int offset = 0) : base(sharedMemory, offset) { }
protected override void OnLoad(EventArgs e) { sharedArray = new SharedArray <int>(name: "MySharedArray", length: 100); sharedBuffer = new BufferReadWrite(name: "MySharedBuffer", bufferSize: sizeof(int) * 100); base.OnLoad(e); }