Mercurial > hg > orthanc
view Core/Enumerations.h @ 2744:d9a179f23b47 Orthanc-0.6.0
close old branch
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Tue, 17 Jul 2018 09:39:17 +0200 |
parents | 6f8ae46ed90e |
children | 7f7a2d174acb f64e3838d6e1 |
line wrap: on
line source
/** * Orthanc - A Lightweight, RESTful DICOM Store * Copyright (C) 2012-2013 Medical Physics Department, CHU of Liege, * Belgium * * This program is free software: you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation, either version 3 of the * License, or (at your option) any later version. * * In addition, as a special exception, the copyright holders of this * program give permission to link the code of its release with the * OpenSSL project's "OpenSSL" library (or with modified versions of it * that use the same license as the "OpenSSL" library), and distribute * the linked executables. You must obey the GNU General Public License * in all respects for all of the code used other than "OpenSSL". If you * modify file(s) with this exception, you may extend this exception to * your version of the file(s), but you are not obligated to do so. If * you do not wish to do so, delete this exception statement from your * version. If you delete this exception statement from all source files * in the program, then also delete it here. * * This program is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see <http://www.gnu.org/licenses/>. **/ #pragma once namespace Orthanc { enum Endianness { Endianness_Unknown, Endianness_Big, Endianness_Little }; enum ErrorCode { // Generic error codes ErrorCode_Success, ErrorCode_Custom, ErrorCode_InternalError, ErrorCode_NotImplemented, ErrorCode_ParameterOutOfRange, ErrorCode_NotEnoughMemory, ErrorCode_BadParameterType, ErrorCode_BadSequenceOfCalls, ErrorCode_InexistentItem, ErrorCode_BadRequest, ErrorCode_NetworkProtocol, // Specific error codes ErrorCode_UriSyntax, ErrorCode_InexistentFile, ErrorCode_CannotWriteFile, ErrorCode_BadFileFormat, ErrorCode_Timeout, ErrorCode_UnknownResource, ErrorCode_IncompatibleDatabaseVersion, ErrorCode_FullStorage }; enum PixelFormat { PixelFormat_RGB24, PixelFormat_Grayscale8, PixelFormat_Grayscale16, PixelFormat_SignedGrayscale16 }; enum ImageExtractionMode { ImageExtractionMode_Preview, ImageExtractionMode_UInt8, ImageExtractionMode_UInt16, ImageExtractionMode_Int16 }; /** * Most common, non-joke and non-experimental HTTP status codes * http://en.wikipedia.org/wiki/List_of_HTTP_status_codes **/ enum HttpStatus { HttpStatus_None = -1, // 1xx Informational HttpStatus_100_Continue = 100, HttpStatus_101_SwitchingProtocols = 101, HttpStatus_102_Processing = 102, // 2xx Success HttpStatus_200_Ok = 200, HttpStatus_201_Created = 201, HttpStatus_202_Accepted = 202, HttpStatus_203_NonAuthoritativeInformation = 203, HttpStatus_204_NoContent = 204, HttpStatus_205_ResetContent = 205, HttpStatus_206_PartialContent = 206, HttpStatus_207_MultiStatus = 207, HttpStatus_208_AlreadyReported = 208, HttpStatus_226_IMUsed = 226, // 3xx Redirection HttpStatus_300_MultipleChoices = 300, HttpStatus_301_MovedPermanently = 301, HttpStatus_302_Found = 302, HttpStatus_303_SeeOther = 303, HttpStatus_304_NotModified = 304, HttpStatus_305_UseProxy = 305, HttpStatus_307_TemporaryRedirect = 307, // 4xx Client Error HttpStatus_400_BadRequest = 400, HttpStatus_401_Unauthorized = 401, HttpStatus_402_PaymentRequired = 402, HttpStatus_403_Forbidden = 403, HttpStatus_404_NotFound = 404, HttpStatus_405_MethodNotAllowed = 405, HttpStatus_406_NotAcceptable = 406, HttpStatus_407_ProxyAuthenticationRequired = 407, HttpStatus_408_RequestTimeout = 408, HttpStatus_409_Conflict = 409, HttpStatus_410_Gone = 410, HttpStatus_411_LengthRequired = 411, HttpStatus_412_PreconditionFailed = 412, HttpStatus_413_RequestEntityTooLarge = 413, HttpStatus_414_RequestUriTooLong = 414, HttpStatus_415_UnsupportedMediaType = 415, HttpStatus_416_RequestedRangeNotSatisfiable = 416, HttpStatus_417_ExpectationFailed = 417, HttpStatus_422_UnprocessableEntity = 422, HttpStatus_423_Locked = 423, HttpStatus_424_FailedDependency = 424, HttpStatus_426_UpgradeRequired = 426, // 5xx Server Error HttpStatus_500_InternalServerError = 500, HttpStatus_501_NotImplemented = 501, HttpStatus_502_BadGateway = 502, HttpStatus_503_ServiceUnavailable = 503, HttpStatus_504_GatewayTimeout = 504, HttpStatus_505_HttpVersionNotSupported = 505, HttpStatus_506_VariantAlsoNegotiates = 506, HttpStatus_507_InsufficientStorage = 507, HttpStatus_509_BandwidthLimitExceeded = 509, HttpStatus_510_NotExtended = 510 }; enum HttpMethod { HttpMethod_Get = 0, HttpMethod_Post = 1, HttpMethod_Delete = 2, HttpMethod_Put = 3 }; /** * WARNING: Do not change the explicit values in the enumerations * below this point. This would result in incompatible databases * between versions of Orthanc! **/ enum CompressionType { CompressionType_None = 1, CompressionType_Zlib = 2 }; enum FileContentType { FileContentType_Dicom = 1, FileContentType_Json = 2 }; const char* EnumerationToString(HttpMethod method); const char* EnumerationToString(HttpStatus status); }