OSDN Git Service

5270c20e5d619f3e2754250f807bcdddcc220396
[vem/vem.git] / lib / vemapi.rb
1 #!/usr/bin/env ruby -I c:/Users/iwasaki/gem/sinatra-master/lib -I lib
2
3 $:.unshift(File.dirname(__FILE__))
4
5 require 'sinatra/base'
6 require 'channel'
7 require 'request'
8 require 'cameraSocket'
9
10 class Vemapi < Sinatra::Base
11   @@channel = Channel.instance
12   puts "vemapi thread: #{Thread.current}"
13
14    get '/' do
15     headers \
16       "Access-Control-Allow-origin" => "*"
17     'VEM API test'
18   end
19
20   get '/:emname/get' do
21     headers \
22       "Access-Control-Allow-origin" => "*"
23     request = Request.new("get", nil)
24     @@channel.put_request(request)
25     return request.get_result
26   end
27
28   get '/:emname/set/:command' do
29     headers \
30       "Access-Control-Allow-origin" => "*"
31     puts "set thread: #{Thread.current}"
32     request = Request.new(params["command"], params)
33     @@channel.put_request(request)
34     return request.get_result
35   end
36
37   get '/:emname/acq' do
38     headers \
39       "Access-Control-Allow-origin" => "*"
40     request = Request.new("acq", nil)
41     @@channel.put_request(request)
42     return request.get_result
43   end
44
45   get '/:emname/start/serial_acq' do
46     headers \
47       "Access-Control-Allow-origin" => "*"
48      request = Request.new("start", "serial_acq")
49     @@channel.put_request(request)
50     return request.get_result
51    end
52
53   get '/:emname/stop/serial_acq' do
54     headers \
55       "Access-Control-Allow-origin" => "*"
56      request = Request.new("stop", "serial_acq")
57     @@channel.put_request(request)
58     return request.get_result
59    end
60
61 end