OSDN Git Service

wits update
[vem/WITs.git] / img / vemapi.rb
1 #!/usr/bin/ruby
2
3 require 'sinatra/base'
4 require './vem'
5 require './hitachicontrol'
6 require './feicontrol'
7 require './jeolcontrol'
8
9
10 class Vemapi < Sinatra::Base
11
12     @@controls = {
13         "stagea"        => "setStageA",
14         "stager"        => "setStager",
15         "spotsize"      => "setSpotSize",
16         "magnification" => "setMagnification",
17         "obj"           => "setObj",
18         "beamtilt"      => "setBeamTilt",
19         "speed"         => "setSpeed"
20     }
21
22     get '/' do
23         'VEM API test'
24     end
25
26     get '/:emname/get' do
27         @@vem = VEM.create("#{params[:emname]}");
28         result = @@vem.__send__("getCondition")
29         "#{result}"
30     end
31
32     get '/:emname/set/:command' do
33         @@vem = VEM.create("#{params[:emname]}");
34         command = "#{params[:command]}"
35         result = @@vem.__send__(@@controls[command], params)
36         "#{result}"
37     end
38 end
39
40  Vemapi.run! :host => 'localhost', :port => 9090
41