class Falcon::Supervisor::Statistics

def capture

def capture
	input, output = IO.pipe
	
	system(@ps, "--ppid", @ppid.to_s, "-o", COLUMNS, out: output, pgroup: true)
	output.close
	
	header, *lines = input.readlines.map(&:strip)
	
	keys = header.split(/\s+/).map(&:downcase)
	
	processes = lines.map do |line|
		keys.zip(line.split(/\s+/, keys.count)).to_h
	end
	
	return processes
end

def initialize(pgid: Process.ppid, ps: PS)

def initialize(pgid: Process.ppid, ps: PS)
	@ppid = pgid
	@ps = ps
end