Module: ImageIntensities

Defined in:
lib/image_intensities.rb,
lib/image_intensities/native.rb,
lib/image_intensities/version.rb

Defined Under Namespace

Modules: Native

Constant Summary collapse

VERSION =
'1.0.4'

Class Method Summary collapse

Class Method Details

.file(path) ⇒ Object



6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# File 'lib/image_intensities.rb', line 6

def self.file(path)
  case magic.file(path)
  when 'image/png'
    ins = Native.png_intensities(path)
    raise 'Processing error' if ins[:error] != 0

    { nw: ins[:nw], ne: ins[:ne], sw: ins[:sw], se: ins[:se] }
  when 'image/jpeg'
    ins = Native.jpeg_intensities(path)
    raise 'Processing error' if ins[:error] != 0

    { nw: ins[:nw], ne: ins[:ne], sw: ins[:sw], se: ins[:se] }
  else
    raise "Unsupported file type `#{mime}'"
  end
end

.magicObject



23
24
25
# File 'lib/image_intensities.rb', line 23

def self.magic
  @magic ||= Magic.new(Magic::MIME_TYPE)
end