source: extensions/AMetaData/JpegMetaData/Common/MakerNotesSignatures.class.php @ 4686

Last change on this file since 4686 was 4686, checked in by grum, 14 years ago

[Plugin:AMetaData] prepare the directory for a future plugin

  • Property svn:executable set to *
File size: 5.0 KB
Line 
1<?php
2/*
3 * --:: JPEG MetaDatas ::-------------------------------------------------------
4 *
5 *  Author    : Grum
6 *   email    : grum at piwigo.org
7 *   website  : http://photos.grum.fr
8 *
9 *   << May the Little SpaceFrog be with you ! >>
10 *
11 *
12 * +-----------------------------------------------------------------------+
13 * | JpegMetaData - a PHP based Jpeg Metadata manager                      |
14 * +-----------------------------------------------------------------------+
15 * | Copyright(C) 2010  Grum - http://www.grum.fr                          |
16 * +-----------------------------------------------------------------------+
17 * | This program is free software; you can redistribute it and/or modify  |
18 * | it under the terms of the GNU General Public License as published by  |
19 * | the Free Software Foundation                                          |
20 * |                                                                       |
21 * | This program is distributed in the hope that it will be useful, but   |
22 * | WITHOUT ANY WARRANTY; without even the implied warranty of            |
23 * | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU      |
24 * | General Public License for more details.                              |
25 * |                                                                       |
26 * | You should have received a copy of the GNU General Public License     |
27 * | along with this program; if not, write to the Free Software           |
28 * | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, |
29 * | USA.                                                                  |
30 * +-----------------------------------------------------------------------+
31 *
32 *
33 * -----------------------------------------------------------------------------
34 *
35 * Define the maker notes signatures for the EXIF "MakerNote" tag
36 *
37 * -----------------------------------------------------------------------------
38 */
39
40  define("MAKER_PENTAX", "Pentax");
41
42  Class MakerNotesSignatures
43  {
44    /** Olympus signature */
45    const OlympusHeader =  "OLYMP\x00\x01\x00";
46    /** Olympus 2 signature */
47    const Olympus2Header = "OLYMPUS\x00II\x03\x00";
48    /** FujiFilm signature */
49    const FujiFilmHeader = "FUJIFILM\x0c\x00\x00\x00";
50    /** Nikon 2 signature */
51    const Nikon2Header = "Nikon\x00\x01\x00";
52    /** Nikon 3 signature */
53    const Nikon3Header = "Nikon\x00\x02\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00";
54    /** Panasonic signature  */
55    const PanasonicHeader = "Panasonic\x00\x00\x00";
56    /** Pentax MM signature  */
57    const PentaxHeader = "AOC\x00MM";
58    /** Pentax II signature  */
59    const Pentax2Header = "AOC\x00II";
60    /** Sigma signature */
61    const SigmaHeader = "SIGMA\x00\x00\x00\x01\x00";
62    /** Sigma signature */
63    const Sigma2Header = "FOVEON\x00\x00\x01\x00";
64    /** Sony signature */
65    const SonyHeader = "SONY DSC \x00\x00\x00";
66    /** Canon signature => no signature in the maker note field ! */
67    const CanonHeader = "";
68    /** Unknown signature => no signature in the maker note field ! */
69    const UnknownHeader = "";
70
71
72    const OlympusHeaderSize   = 8;
73    const Olympus2HeaderSize  = 12;
74    const FujiFilmHeaderSize  = 12;
75    const Nikon2HeaderSize    = 8;
76    const Nikon3HeaderSize    = 18;
77    const PanasonicHeaderSize = 12;
78    const PentaxHeaderSize    = 6;
79    const Pentax2HeaderSize   = 6;
80    const SigmaHeaderSize     = 8;
81    const Sigma2HeaderSize    = 8;
82    const SonyHeaderSize      = 12;
83    const CanonHeaderSize     = 0;
84    const UnknownHeaderSize     = 0;
85
86
87    static public function getMaker($datas)
88    {
89      if(substr_compare($datas, self::OlympusHeader, 0, self::OlympusHeaderSize)===0)
90       { return(self::OlympusHeader); }
91      elseif(substr_compare($datas, self::Olympus2Header, 0, self::Olympus2HeaderSize)===0)
92       { return(self::Olympus2Header); }
93      elseif(substr_compare($datas, self::FujiFilmHeader, 0, self::FujiFilmHeaderSize)===0)
94       { return(self::FujiFilmHeader); }
95      elseif(substr_compare($datas, self::Nikon2Header, 0, self::Nikon2HeaderSize)===0)
96       { return(self::Nikon2Header); }
97      elseif(substr_compare($datas, self::Nikon3Header, 0, self::Nikon3HeaderSize)===0)
98       { return(self::Nikon3Header); }
99      elseif(substr_compare($datas, self::PanasonicHeader, 0, self::PanasonicHeaderSize)===0)
100       { return(self::PanasonicHeader); }
101      elseif(substr_compare($datas, self::PentaxHeader, 0, self::PentaxHeaderSize)===0)
102       { return(self::PentaxHeader); }
103      elseif(substr_compare($datas, self::Pentax2Header, 0, self::Pentax2HeaderSize)===0)
104       { return(self::Pentax2Header); }
105      elseif(substr_compare($datas, self::SigmaHeader, 0, self::SigmaHeaderSize)===0)
106       { return(self::SigmaHeader); }
107      elseif(substr_compare($datas, self::Sigma2Header, 0, self::Sigma2HeaderSize)===0)
108       { return(self::Sigma2Header); }
109      elseif(substr_compare($datas, self::SonyHeader, 0, self::SonyHeaderSize)===0)
110       { return(self::SonyHeader); }
111      else
112       { return(self::UnknownHeader); }
113
114    }
115  }
116
117  ?>
Note: See TracBrowser for help on using the repository browser.