Mercurial > hg > orthanc
annotate Core/Enumerations.h @ 553:27d32fc6209a
simplifications to cmake, use a digest of boost 1.54.0 thanks bcp
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Tue, 17 Sep 2013 15:06:16 +0200 |
parents | 6f8ae46ed90e |
children | 7f7a2d174acb f64e3838d6e1 |
rev | line source |
---|---|
0 | 1 /** |
59 | 2 * Orthanc - A Lightweight, RESTful DICOM Store |
398 | 3 * Copyright (C) 2012-2013 Medical Physics Department, CHU of Liege, |
0 | 4 * Belgium |
5 * | |
6 * This program is free software: you can redistribute it and/or | |
7 * modify it under the terms of the GNU General Public License as | |
8 * published by the Free Software Foundation, either version 3 of the | |
9 * License, or (at your option) any later version. | |
136 | 10 * |
11 * In addition, as a special exception, the copyright holders of this | |
12 * program give permission to link the code of its release with the | |
13 * OpenSSL project's "OpenSSL" library (or with modified versions of it | |
14 * that use the same license as the "OpenSSL" library), and distribute | |
15 * the linked executables. You must obey the GNU General Public License | |
16 * in all respects for all of the code used other than "OpenSSL". If you | |
17 * modify file(s) with this exception, you may extend this exception to | |
18 * your version of the file(s), but you are not obligated to do so. If | |
19 * you do not wish to do so, delete this exception statement from your | |
20 * version. If you delete this exception statement from all source files | |
21 * in the program, then also delete it here. | |
0 | 22 * |
23 * This program is distributed in the hope that it will be useful, but | |
24 * WITHOUT ANY WARRANTY; without even the implied warranty of | |
25 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
26 * General Public License for more details. | |
27 * | |
28 * You should have received a copy of the GNU General Public License | |
29 * along with this program. If not, see <http://www.gnu.org/licenses/>. | |
30 **/ | |
31 | |
32 | |
33 #pragma once | |
34 | |
59 | 35 namespace Orthanc |
0 | 36 { |
453 | 37 enum Endianness |
38 { | |
39 Endianness_Unknown, | |
40 Endianness_Big, | |
41 Endianness_Little | |
42 }; | |
43 | |
0 | 44 enum ErrorCode |
45 { | |
46 // Generic error codes | |
47 ErrorCode_Success, | |
48 ErrorCode_Custom, | |
49 ErrorCode_InternalError, | |
50 ErrorCode_NotImplemented, | |
51 ErrorCode_ParameterOutOfRange, | |
52 ErrorCode_NotEnoughMemory, | |
53 ErrorCode_BadParameterType, | |
211 | 54 ErrorCode_BadSequenceOfCalls, |
282 | 55 ErrorCode_InexistentItem, |
304 | 56 ErrorCode_BadRequest, |
459 | 57 ErrorCode_NetworkProtocol, |
0 | 58 |
59 // Specific error codes | |
60 ErrorCode_UriSyntax, | |
61 ErrorCode_InexistentFile, | |
62 ErrorCode_CannotWriteFile, | |
140 | 63 ErrorCode_BadFileFormat, |
198
663cc6c46d0a
before refactoring of ServerIndex::GetXXX
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
140
diff
changeset
|
64 ErrorCode_Timeout, |
252 | 65 ErrorCode_UnknownResource, |
268
4bc02e2254ec
preparing ServerIndex for recycling
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
252
diff
changeset
|
66 ErrorCode_IncompatibleDatabaseVersion, |
4bc02e2254ec
preparing ServerIndex for recycling
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
252
diff
changeset
|
67 ErrorCode_FullStorage |
0 | 68 }; |
69 | |
70 enum PixelFormat | |
71 { | |
368
80011cd589e6
support of rgb images
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
304
diff
changeset
|
72 PixelFormat_RGB24, |
0 | 73 PixelFormat_Grayscale8, |
465
7a966b440f19
signed images to PNG
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
459
diff
changeset
|
74 PixelFormat_Grayscale16, |
7a966b440f19
signed images to PNG
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
459
diff
changeset
|
75 PixelFormat_SignedGrayscale16 |
0 | 76 }; |
221
e7432706b354
accessors to storage
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
211
diff
changeset
|
77 |
472 | 78 enum ImageExtractionMode |
79 { | |
80 ImageExtractionMode_Preview, | |
81 ImageExtractionMode_UInt8, | |
82 ImageExtractionMode_UInt16, | |
83 ImageExtractionMode_Int16 | |
84 }; | |
85 | |
232
5368bbe813cf
refactoring of attachments
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
221
diff
changeset
|
86 |
5368bbe813cf
refactoring of attachments
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
221
diff
changeset
|
87 /** |
473
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
88 * Most common, non-joke and non-experimental HTTP status codes |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
89 * http://en.wikipedia.org/wiki/List_of_HTTP_status_codes |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
90 **/ |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
91 enum HttpStatus |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
92 { |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
93 HttpStatus_None = -1, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
94 |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
95 // 1xx Informational |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
96 HttpStatus_100_Continue = 100, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
97 HttpStatus_101_SwitchingProtocols = 101, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
98 HttpStatus_102_Processing = 102, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
99 |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
100 // 2xx Success |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
101 HttpStatus_200_Ok = 200, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
102 HttpStatus_201_Created = 201, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
103 HttpStatus_202_Accepted = 202, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
104 HttpStatus_203_NonAuthoritativeInformation = 203, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
105 HttpStatus_204_NoContent = 204, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
106 HttpStatus_205_ResetContent = 205, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
107 HttpStatus_206_PartialContent = 206, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
108 HttpStatus_207_MultiStatus = 207, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
109 HttpStatus_208_AlreadyReported = 208, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
110 HttpStatus_226_IMUsed = 226, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
111 |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
112 // 3xx Redirection |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
113 HttpStatus_300_MultipleChoices = 300, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
114 HttpStatus_301_MovedPermanently = 301, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
115 HttpStatus_302_Found = 302, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
116 HttpStatus_303_SeeOther = 303, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
117 HttpStatus_304_NotModified = 304, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
118 HttpStatus_305_UseProxy = 305, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
119 HttpStatus_307_TemporaryRedirect = 307, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
120 |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
121 // 4xx Client Error |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
122 HttpStatus_400_BadRequest = 400, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
123 HttpStatus_401_Unauthorized = 401, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
124 HttpStatus_402_PaymentRequired = 402, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
125 HttpStatus_403_Forbidden = 403, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
126 HttpStatus_404_NotFound = 404, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
127 HttpStatus_405_MethodNotAllowed = 405, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
128 HttpStatus_406_NotAcceptable = 406, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
129 HttpStatus_407_ProxyAuthenticationRequired = 407, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
130 HttpStatus_408_RequestTimeout = 408, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
131 HttpStatus_409_Conflict = 409, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
132 HttpStatus_410_Gone = 410, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
133 HttpStatus_411_LengthRequired = 411, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
134 HttpStatus_412_PreconditionFailed = 412, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
135 HttpStatus_413_RequestEntityTooLarge = 413, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
136 HttpStatus_414_RequestUriTooLong = 414, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
137 HttpStatus_415_UnsupportedMediaType = 415, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
138 HttpStatus_416_RequestedRangeNotSatisfiable = 416, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
139 HttpStatus_417_ExpectationFailed = 417, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
140 HttpStatus_422_UnprocessableEntity = 422, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
141 HttpStatus_423_Locked = 423, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
142 HttpStatus_424_FailedDependency = 424, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
143 HttpStatus_426_UpgradeRequired = 426, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
144 |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
145 // 5xx Server Error |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
146 HttpStatus_500_InternalServerError = 500, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
147 HttpStatus_501_NotImplemented = 501, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
148 HttpStatus_502_BadGateway = 502, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
149 HttpStatus_503_ServiceUnavailable = 503, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
150 HttpStatus_504_GatewayTimeout = 504, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
151 HttpStatus_505_HttpVersionNotSupported = 505, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
152 HttpStatus_506_VariantAlsoNegotiates = 506, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
153 HttpStatus_507_InsufficientStorage = 507, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
154 HttpStatus_509_BandwidthLimitExceeded = 509, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
155 HttpStatus_510_NotExtended = 510 |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
156 }; |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
157 |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
158 |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
159 enum HttpMethod |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
160 { |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
161 HttpMethod_Get = 0, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
162 HttpMethod_Post = 1, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
163 HttpMethod_Delete = 2, |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
164 HttpMethod_Put = 3 |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
165 }; |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
166 |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
167 |
c9a5d72f8481
changing the namespace of HTTP enumerations
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
472
diff
changeset
|
168 /** |
232
5368bbe813cf
refactoring of attachments
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
221
diff
changeset
|
169 * WARNING: Do not change the explicit values in the enumerations |
5368bbe813cf
refactoring of attachments
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
221
diff
changeset
|
170 * below this point. This would result in incompatible databases |
5368bbe813cf
refactoring of attachments
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
221
diff
changeset
|
171 * between versions of Orthanc! |
5368bbe813cf
refactoring of attachments
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
221
diff
changeset
|
172 **/ |
5368bbe813cf
refactoring of attachments
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
221
diff
changeset
|
173 |
221
e7432706b354
accessors to storage
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
211
diff
changeset
|
174 enum CompressionType |
e7432706b354
accessors to storage
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
211
diff
changeset
|
175 { |
e7432706b354
accessors to storage
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
211
diff
changeset
|
176 CompressionType_None = 1, |
e7432706b354
accessors to storage
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
211
diff
changeset
|
177 CompressionType_Zlib = 2 |
e7432706b354
accessors to storage
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
211
diff
changeset
|
178 }; |
232
5368bbe813cf
refactoring of attachments
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
221
diff
changeset
|
179 |
233 | 180 enum FileContentType |
232
5368bbe813cf
refactoring of attachments
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
221
diff
changeset
|
181 { |
233 | 182 FileContentType_Dicom = 1, |
183 FileContentType_Json = 2 | |
232
5368bbe813cf
refactoring of attachments
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
221
diff
changeset
|
184 }; |
477 | 185 |
186 | |
187 | |
188 const char* EnumerationToString(HttpMethod method); | |
189 | |
190 const char* EnumerationToString(HttpStatus status); | |
0 | 191 } |