Class: QDA::Filters::Win32Process::Win32popenIO

Inherits:
Object
  • Object
show all
Defined in:
lib/openc3/win32/win32.rb

Instance Method Summary collapse

Constructor Details

#initialize(hRead, hWrite, hError) ⇒ Win32popenIO

Returns a new instance of Win32popenIO.



329
330
331
332
333
# File 'lib/openc3/win32/win32.rb', line 329

def initialize(hRead, hWrite, hError)
  @hRead  = hRead
  @hWrite = hWrite
  @hError = hError
end

Instance Method Details

#readObject



339
340
341
342
# File 'lib/openc3/win32/win32.rb', line 339

def read
  sleep(0.01) while Win32Process.peek_named_pipe(@hRead).zero?
  Win32Process.read_file(@hRead)
end

#read_allObject



344
345
346
347
348
349
350
# File 'lib/openc3/win32/win32.rb', line 344

def read_all
  all = ''
  until (buffer = read).empty?
    all << buffer
  end
  all
end

#read_all_errObject



357
358
359
360
361
362
363
# File 'lib/openc3/win32/win32.rb', line 357

def read_all_err
  all = ''
  until (buffer = read_err).empty?
    all << buffer
  end
  all
end

#read_errObject



352
353
354
355
# File 'lib/openc3/win32/win32.rb', line 352

def read_err
  sleep(0.01) while Win32Process.peek_named_pipe(@hError).zero?
  Win32Process.read_file(@hError)
end

#write(data) ⇒ Object



335
336
337
# File 'lib/openc3/win32/win32.rb', line 335

def write(data)
  Win32Process.write_file(@hWrite, data.to_s)
end