make array constexpr
Signed-off-by: Rosen Penev <rosenp@gmail.com>
This commit is contained in:
parent
b17828b454
commit
ae3e28c62a
@ -187,33 +187,42 @@ namespace Exiv2 {
|
||||
//@}
|
||||
|
||||
// Constant Data
|
||||
static const byte dht_; //!< JPEG DHT marker
|
||||
static const byte dqt_; //!< JPEG DQT marker
|
||||
static const byte dri_; //!< JPEG DRI marker
|
||||
static const byte sos_; //!< JPEG SOS marker
|
||||
static const byte eoi_; //!< JPEG EOI marker
|
||||
static const byte app0_; //!< JPEG APP0 marker
|
||||
static const byte app1_; //!< JPEG APP1 marker
|
||||
static const byte app2_; //!< JPEG APP2 marker
|
||||
static const byte app13_; //!< JPEG APP13 marker
|
||||
static const byte com_; //!< JPEG Comment marker
|
||||
static const byte sof0_; //!< JPEG Start-Of-Frame marker
|
||||
static const byte sof1_; //!< JPEG Start-Of-Frame marker
|
||||
static const byte sof2_; //!< JPEG Start-Of-Frame marker
|
||||
static const byte sof3_; //!< JPEG Start-Of-Frame marker
|
||||
static const byte sof5_; //!< JPEG Start-Of-Frame marker
|
||||
static const byte sof6_; //!< JPEG Start-Of-Frame marker
|
||||
static const byte sof7_; //!< JPEG Start-Of-Frame marker
|
||||
static const byte sof9_; //!< JPEG Start-Of-Frame marker
|
||||
static const byte sof10_; //!< JPEG Start-Of-Frame marker
|
||||
static const byte sof11_; //!< JPEG Start-Of-Frame marker
|
||||
static const byte sof13_; //!< JPEG Start-Of-Frame marker
|
||||
static const byte sof14_; //!< JPEG Start-Of-Frame marker
|
||||
static const byte sof15_; //!< JPEG Start-Of-Frame marker
|
||||
static const char* const exifId_; //!< Exif identifier
|
||||
static const char* const jfifId_; //!< JFIF identifier
|
||||
static const char* const xmpId_; //!< XMP packet identifier
|
||||
static const char* const iccId_; //!< ICC profile identifier
|
||||
static constexpr byte dht_ = 0xc4; //!< JPEG DHT marker
|
||||
static constexpr byte dqt_ = 0xdb; //!< JPEG DQT marker
|
||||
static constexpr byte dri_ = 0xdd; //!< JPEG DRI marker
|
||||
static constexpr byte sos_ = 0xda; //!< JPEG SOS marker
|
||||
static constexpr byte eoi_ = 0xd9; //!< JPEG EOI marker
|
||||
static constexpr byte app0_ = 0xe0; //!< JPEG APP0 marker
|
||||
static constexpr byte app1_ = 0xe1; //!< JPEG APP1 marker
|
||||
static constexpr byte app2_ = 0xe2; //!< JPEG APP2 marker
|
||||
static constexpr byte app13_ = 0xed; //!< JPEG APP13 marker
|
||||
static constexpr byte com_ = 0xfe; //!< JPEG Comment marker
|
||||
|
||||
// Start of Frame markers, nondifferential Huffman-coding frames
|
||||
static constexpr byte sof0_ = 0xc0; //!< JPEG Start-Of-Frame marker
|
||||
static constexpr byte sof1_ = 0xc1; //!< JPEG Start-Of-Frame marker
|
||||
static constexpr byte sof2_ = 0xc2; //!< JPEG Start-Of-Frame marker
|
||||
static constexpr byte sof3_ = 0xc3; //!< JPEG Start-Of-Frame marker
|
||||
|
||||
// Start of Frame markers, differential Huffman-coding frames
|
||||
static constexpr byte sof5_ = 0xc5; //!< JPEG Start-Of-Frame marker
|
||||
static constexpr byte sof6_ = 0xc6; //!< JPEG Start-Of-Frame marker
|
||||
static constexpr byte sof7_ = 0xc7; //!< JPEG Start-Of-Frame marker
|
||||
|
||||
// Start of Frame markers, nondifferential arithmetic-coding frames
|
||||
static constexpr byte sof9_ = 0xc9; //!< JPEG Start-Of-Frame marker
|
||||
static constexpr byte sof10_ = 0xca; //!< JPEG Start-Of-Frame marker
|
||||
static constexpr byte sof11_ = 0xcb; //!< JPEG Start-Of-Frame marker
|
||||
|
||||
// Start of Frame markers, differential arithmetic-coding frames
|
||||
static constexpr byte sof13_ = 0xcd; //!< JPEG Start-Of-Frame marker
|
||||
static constexpr byte sof14_ = 0xce; //!< JPEG Start-Of-Frame marker
|
||||
static constexpr byte sof15_ = 0xcf; //!< JPEG Start-Of-Frame marker
|
||||
|
||||
static constexpr auto exifId_ = "Exif\0\0"; //!< Exif identifier
|
||||
static constexpr auto jfifId_ = "JFIF\0"; //!< JFIF identifier
|
||||
static constexpr auto xmpId_ = "http://ns.adobe.com/xap/1.0/\0"; //!< XMP packet identifier
|
||||
static constexpr auto iccId_ = "ICC_PROFILE\0"; //!< ICC profile identifier
|
||||
|
||||
private:
|
||||
//! @name Manipulators
|
||||
|
||||
@ -36,7 +36,7 @@ namespace {
|
||||
const std::string dosEpsSignature = "\xC5\xD0\xD3\xC6";
|
||||
|
||||
// first line of EPS
|
||||
const std::array<std::string, 3> epsFirstLine{
|
||||
constexpr auto epsFirstLine = std::array<std::string_view, 3>{
|
||||
"%!PS-Adobe-3.0 EPSF-3.0",
|
||||
"%!PS-Adobe-3.0 EPSF-3.0 ", // OpenOffice
|
||||
"%!PS-Adobe-3.1 EPSF-3.0", // Illustrator
|
||||
|
||||
@ -34,44 +34,6 @@
|
||||
// class member definitions
|
||||
|
||||
namespace Exiv2 {
|
||||
constexpr byte JpegBase::dht_ = 0xc4;
|
||||
constexpr byte JpegBase::dqt_ = 0xdb;
|
||||
constexpr byte JpegBase::dri_ = 0xdd;
|
||||
constexpr byte JpegBase::sos_ = 0xda;
|
||||
constexpr byte JpegBase::eoi_ = 0xd9;
|
||||
constexpr byte JpegBase::app0_ = 0xe0;
|
||||
constexpr byte JpegBase::app1_ = 0xe1;
|
||||
constexpr byte JpegBase::app2_ = 0xe2;
|
||||
constexpr byte JpegBase::app13_ = 0xed;
|
||||
constexpr byte JpegBase::com_ = 0xfe;
|
||||
|
||||
// Start of Frame markers, nondifferential Huffman-coding frames
|
||||
constexpr byte JpegBase::sof0_ = 0xc0; // start of frame 0, baseline DCT
|
||||
constexpr byte JpegBase::sof1_ = 0xc1; // start of frame 1, extended sequential DCT, Huffman coding
|
||||
constexpr byte JpegBase::sof2_ = 0xc2; // start of frame 2, progressive DCT, Huffman coding
|
||||
constexpr byte JpegBase::sof3_ = 0xc3; // start of frame 3, lossless sequential, Huffman coding
|
||||
|
||||
// Start of Frame markers, differential Huffman-coding frames
|
||||
constexpr byte JpegBase::sof5_ = 0xc5; // start of frame 5, differential sequential DCT, Huffman coding
|
||||
constexpr byte JpegBase::sof6_ = 0xc6; // start of frame 6, differential progressive DCT, Huffman coding
|
||||
constexpr byte JpegBase::sof7_ = 0xc7; // start of frame 7, differential lossless, Huffman coding
|
||||
|
||||
// Start of Frame markers, nondifferential arithmetic-coding frames
|
||||
constexpr byte JpegBase::sof9_ = 0xc9; // start of frame 9, extended sequential DCT, arithmetic coding
|
||||
constexpr byte JpegBase::sof10_ = 0xca; // start of frame 10, progressive DCT, arithmetic coding
|
||||
constexpr byte JpegBase::sof11_ = 0xcb; // start of frame 11, lossless sequential, arithmetic coding
|
||||
|
||||
// Start of Frame markers, differential arithmetic-coding frames
|
||||
constexpr byte JpegBase::sof13_ = 0xcd; // start of frame 13, differential sequential DCT, arithmetic coding
|
||||
constexpr byte JpegBase::sof14_ = 0xce; // start of frame 14, progressive DCT, arithmetic coding
|
||||
constexpr byte JpegBase::sof15_ = 0xcf; // start of frame 15, differential lossless, arithmetic coding
|
||||
|
||||
constexpr const char* JpegBase::exifId_ = "Exif\0\0";
|
||||
constexpr const char* JpegBase::jfifId_ = "JFIF\0";
|
||||
constexpr const char* JpegBase::xmpId_ = "http://ns.adobe.com/xap/1.0/\0";
|
||||
constexpr const char* JpegBase::iccId_ = "ICC_PROFILE\0";
|
||||
|
||||
|
||||
static inline bool inRange(int lo,int value, int hi)
|
||||
{
|
||||
return lo<=value && value <= hi;
|
||||
|
||||
Loading…
Reference in New Issue
Block a user