comparison Resources/SyncOrthancFolder.py @ 191:993dd140bd30

Resort to Orthanc framework
author Sebastien Jodogne <s.jodogne@gmail.com>
date Mon, 16 Apr 2018 21:29:30 +0200
parents 56b1894b5619
children a1ca7cf02939
comparison
equal deleted inserted replaced
190:7151dbac8d5e 191:993dd140bd30
8 import multiprocessing 8 import multiprocessing
9 import os 9 import os
10 import stat 10 import stat
11 import urllib2 11 import urllib2
12 12
13 TARGET = os.path.join(os.path.dirname(__file__), '..', 'Orthanc') 13 TARGET = os.path.join(os.path.dirname(__file__), 'Orthanc')
14 PLUGIN_SDK_VERSION = '0.9.5' 14 PLUGIN_SDK_VERSION = '0.9.5'
15 REPOSITORY = 'https://bitbucket.org/sjodogne/orthanc/raw' 15 REPOSITORY = 'https://bitbucket.org/sjodogne/orthanc/raw'
16 16
17 FILES = [ 17 FILES = [
18 'NEWS', 18 'DownloadOrthancFramework.cmake',
19 'Core/ChunkedBuffer.cpp', 19 'LinuxStandardBaseToolchain.cmake',
20 'Core/ChunkedBuffer.h', 20 'MinGW-W64-Toolchain32.cmake',
21 'Core/Enumerations.cpp', 21 'MinGW-W64-Toolchain64.cmake',
22 'Core/Enumerations.h', 22 'MinGWToolchain.cmake',
23 'Core/Endianness.h',
24 'Core/DicomFormat/DicomMap.h',
25 'Core/DicomFormat/DicomMap.cpp',
26 'Core/DicomFormat/DicomTag.h',
27 'Core/DicomFormat/DicomTag.cpp',
28 'Core/DicomFormat/DicomValue.h',
29 'Core/DicomFormat/DicomValue.cpp',
30 'Core/FileStorage/FilesystemStorage.cpp',
31 'Core/FileStorage/FilesystemStorage.h',
32 'Core/FileStorage/IStorageArea.h',
33 'Core/IDynamicObject.h',
34 'Core/Images/ImageAccessor.cpp',
35 'Core/Images/ImageAccessor.h',
36 'Core/Images/ImageBuffer.cpp',
37 'Core/Images/ImageBuffer.h',
38 'Core/Images/ImageProcessing.cpp',
39 'Core/Images/ImageProcessing.h',
40 'Core/Images/PixelTraits.h',
41 'Core/Logging.h',
42 'Core/MultiThreading/SharedMessageQueue.cpp',
43 'Core/MultiThreading/SharedMessageQueue.h',
44 'Core/OrthancException.h',
45 'Core/PrecompiledHeaders.cpp',
46 'Core/PrecompiledHeaders.h',
47 'Core/SQLite/Connection.cpp',
48 'Core/SQLite/Connection.h',
49 'Core/SQLite/FunctionContext.cpp',
50 'Core/SQLite/FunctionContext.h',
51 'Core/SQLite/IScalarFunction.h',
52 'Core/SQLite/ITransaction.h',
53 'Core/SQLite/NonCopyable.h',
54 'Core/SQLite/OrthancSQLiteException.h',
55 'Core/SQLite/SQLiteTypes.h',
56 'Core/SQLite/Statement.cpp',
57 'Core/SQLite/Statement.h',
58 'Core/SQLite/StatementId.cpp',
59 'Core/SQLite/StatementId.h',
60 'Core/SQLite/StatementReference.cpp',
61 'Core/SQLite/StatementReference.h',
62 'Core/SQLite/Transaction.cpp',
63 'Core/SQLite/Transaction.h',
64 'Core/SystemToolbox.cpp',
65 'Core/SystemToolbox.h',
66 'Core/Toolbox.cpp',
67 'Core/Toolbox.h',
68 'Plugins/Samples/Common/ExportedSymbols.list',
69 'Plugins/Samples/Common/VersionScript.map',
70 'Plugins/Samples/GdcmDecoder/README',
71 'Plugins/Samples/GdcmDecoder/GdcmImageDecoder.h',
72 'Plugins/Samples/GdcmDecoder/GdcmImageDecoder.cpp',
73 'Plugins/Samples/GdcmDecoder/GdcmDecoderCache.h',
74 'Plugins/Samples/GdcmDecoder/GdcmDecoderCache.cpp',
75 'Plugins/Samples/GdcmDecoder/OrthancImageWrapper.h',
76 'Plugins/Samples/GdcmDecoder/OrthancImageWrapper.cpp',
77 'Resources/CMake/AutoGeneratedCode.cmake',
78 'Resources/CMake/BoostConfiguration.cmake',
79 'Resources/CMake/Compiler.cmake',
80 'Resources/CMake/DownloadPackage.cmake',
81 'Resources/CMake/GoogleTestConfiguration.cmake',
82 'Resources/CMake/JsonCppConfiguration.cmake',
83 'Resources/CMake/SQLiteConfiguration.cmake',
84 'Resources/CMake/UuidConfiguration.cmake',
85 'Resources/Patches/boost-1.66.0-linux-standard-base.patch',
86 'Resources/EmbedResources.py',
87 'Resources/MinGW-W64-Toolchain32.cmake',
88 'Resources/MinGW-W64-Toolchain64.cmake',
89 'Resources/MinGWToolchain.cmake',
90 'Resources/LinuxStandardBaseToolchain.cmake',
91 'Resources/ThirdParty/VisualStudio/stdint.h',
92 'Resources/ThirdParty/base64/base64.cpp',
93 'Resources/ThirdParty/base64/base64.h',
94 'Resources/WindowsResources.py',
95 'Resources/WindowsResources.rc',
96 ] 23 ]
97 24
98 SDK = [ 25 SDK = [
99 'orthanc/OrthancCPlugin.h', 26 'orthanc/OrthancCPlugin.h',
100 ] 27 'orthanc/OrthancCDatabasePlugin.h',
101 28 'orthanc/OrthancCppDatabasePlugin.h',
102 EXE = [
103 'Resources/EmbedResources.py',
104 'Resources/WindowsResources.py',
105 ] 29 ]
106 30
107 31
108 def Download(x): 32 def Download(x):
109 branch = x[0] 33 branch = x[0]
123 47
124 48
125 commands = [] 49 commands = []
126 50
127 for f in FILES: 51 for f in FILES:
128 commands.append([ 'default', f, f ]) 52 commands.append([ 'default',
53 os.path.join('Resources', f),
54 f ])
129 55
130 for f in SDK: 56 for f in SDK:
131 commands.append([ 57 commands.append([
132 'Orthanc-%s' % PLUGIN_SDK_VERSION, 58 'Orthanc-%s' % PLUGIN_SDK_VERSION,
133 'Plugins/Include/%s' % f, 59 'Plugins/Include/%s' % f,
134 'Sdk-%s/%s' % (PLUGIN_SDK_VERSION, f) 60 'Sdk-%s/%s' % (PLUGIN_SDK_VERSION, f)
135 ]) 61 ])
136 62
137 63
138 pool = multiprocessing.Pool(10) # simultaneous downloads 64 pool = multiprocessing.Pool(10) # simultaneous downloads
139 pool.map(Download, commands) 65 pool.map(Download, commands)
140
141
142 for exe in EXE:
143 path = os.path.join(TARGET, exe)
144 st = os.stat(path)
145 os.chmod(path, st.st_mode | stat.S_IEXEC)
146