blob: 385af9c8c240a66bb383c19b93a647b47185c0aa [file] [log] [blame]
// Copyright 2013 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef CHROME_COMMON_MEDIA_GALLERIES_PMP_CONSTANTS_H_
#define CHROME_COMMON_MEDIA_GALLERIES_PMP_CONSTANTS_H_
#include <string>
#include "base/basictypes.h"
#include "base/time/time.h"
namespace picasa {
// PMP file format.
// Info derived from: http://sbktech.blogspot.com/2011/12/picasa-pmp-format.html
const char kPmpExtension[] = "pmp";
const base::Time::Exploded kPmpVariantTimeEpoch = {
1899, 12, 7, 30, // Dec 30, 1899 (Saturday)
0, 0, 0, 0 // 00:00:00.000
};
const int64 kPmpHeaderSize = 20;
const int kPmpMagic1Offset = 0;
const int kPmpMagic2Offset = 6;
const int kPmpMagic3Offset = 8;
const int kPmpMagic4Offset = 14;
const uint32 kPmpMagic1 = 0x3fcccccd;
const uint16 kPmpMagic2 = 0x1332;
const uint32 kPmpMagic3 = 0x00000002;
const uint16 kPmpMagic4 = 0x1332;
const int kPmpFieldType1Offset = 4;
const int kPmpFieldType2Offset = 12;
const int kPmpRowCountOffset = 16;
enum PmpFieldType {
PMP_TYPE_STRING = 0x00,
PMP_TYPE_UINT32 = 0x01,
PMP_TYPE_DOUBLE64 = 0x02,
PMP_TYPE_UINT8 = 0x03,
PMP_TYPE_UINT64 = 0x04,
PMP_TYPE_INVALID = 0xff
};
} // namespace picasa
#endif // CHROME_COMMON_MEDIA_GALLERIES_PMP_CONSTANTS_H_