Mercurial > hg > orthanc
comparison Resources/Toolbox.lua @ 1023:226cfef3822e templating
integration mainline->templating
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Thu, 10 Jul 2014 11:42:32 +0200 |
parents | 160dfe770618 |
children | 921532f67770 |
comparison
equal
deleted
inserted
replaced
945:427a1f996b7b | 1023:226cfef3822e |
---|---|
4 Set indent ("") to prefix each line: Mytable [KEY] [KEY]...[KEY] VALUE | 4 Set indent ("") to prefix each line: Mytable [KEY] [KEY]...[KEY] VALUE |
5 Source: https://gist.github.com/stuby/5445834#file-rprint-lua | 5 Source: https://gist.github.com/stuby/5445834#file-rprint-lua |
6 --]] | 6 --]] |
7 | 7 |
8 function PrintRecursive(s, l, i) -- recursive Print (structure, limit, indent) | 8 function PrintRecursive(s, l, i) -- recursive Print (structure, limit, indent) |
9 l = (l) or 100; i = i or ""; -- default item limit, indent string | 9 l = (l) or 100; -- default item limit |
10 i = i or ""; -- indent string | |
10 if (l<1) then print "ERROR: Item limit reached."; return l-1 end; | 11 if (l<1) then print "ERROR: Item limit reached."; return l-1 end; |
11 local ts = type(s); | 12 local ts = type(s); |
12 if (ts ~= "table") then print (i,ts,s); return l-1 end | 13 if (ts ~= "table") then print (i,ts,s); return l-1 end |
13 print (i,ts); -- print "table" | 14 print (i,ts); -- print "table" |
14 for k,v in pairs(s) do -- print "[KEY] VALUE" | 15 for k,v in pairs(s) do -- print "[KEY] VALUE" |
16 if (l < 0) then break end | 17 if (l < 0) then break end |
17 end | 18 end |
18 return l | 19 return l |
19 end | 20 end |
20 | 21 |
22 | |
23 | |
24 | |
25 function _InitializeJob() | |
26 _job = {} | |
27 end | |
28 | |
29 | |
30 function _AccessJob() | |
31 return _job | |
32 end | |
33 | |
34 | |
35 function SendToModality(instanceId, modality) | |
36 if instanceId == nil then | |
37 error('Cannot send a nonexistent instance') | |
38 end | |
39 | |
40 table.insert(_job, { | |
41 Operation = 'store-scu', | |
42 Instance = instanceId, | |
43 Modality = modality | |
44 }) | |
45 return instanceId | |
46 end | |
47 | |
48 | |
49 function SendToPeer(instanceId, peer) | |
50 if instanceId == nil then | |
51 error('Cannot send a nonexistent instance') | |
52 end | |
53 | |
54 table.insert(_job, { | |
55 Operation = 'store-peer', | |
56 Instance = instanceId, | |
57 Peer = peer | |
58 }) | |
59 return instanceId | |
60 end | |
61 | |
62 | |
63 function Delete(instanceId) | |
64 if instanceId == nil then | |
65 error('Cannot delete a nonexistent instance') | |
66 end | |
67 | |
68 table.insert(_job, { | |
69 Operation = 'delete', | |
70 Instance = instanceId | |
71 }) | |
72 return nil -- Forbid chaining | |
73 end | |
74 | |
75 | |
76 function ModifyInstance(instanceId, replacements, removals, removePrivateTags) | |
77 if instanceId == nil then | |
78 error('Cannot modify a nonexistent instance') | |
79 end | |
80 | |
81 if instanceId == '' then | |
82 error('Cannot modify twice an instance'); | |
83 end | |
84 | |
85 table.insert(_job, { | |
86 Operation = 'modify', | |
87 Instance = instanceId, | |
88 Replace = replacements, | |
89 Remove = removals, | |
90 RemovePrivateTags = removePrivateTags | |
91 }) | |
92 return '' -- Chain with another operation | |
93 end | |
94 | |
95 | |
96 | |
21 print('Lua toolbox installed') | 97 print('Lua toolbox installed') |