great. Scene Mode is shared between Minolta and Sony. Exactly same values...

This commit is contained in:
HumanDynamo 2010-04-27 10:04:13 +00:00
parent 610d86133a
commit 4458962677
4 changed files with 31 additions and 17 deletions

View File

@ -120,6 +120,9 @@ namespace Exiv2 {
TagInfo(0x0089, "ThumbnailLength", N_("Thumbnail Length"),
N_("Size of the thumbnail"),
minoltaIfdId, makerTags, unsignedLong, printValue),
TagInfo(0x0100, "SceneMode", N_("Scene Mode"),
N_("Scene Mode"),
minoltaIfdId, makerTags, unsignedLong, printMinoltaSonySceneMode),
// TODO: for A100, use Sony table from minoltasonyvallue.cpp::printMinoltaSonyColorMode().
TagInfo(0x0101, "ColorMode", N_("Color Mode"),

View File

@ -473,4 +473,28 @@ namespace Exiv2 {
{
return EXV_PRINT_TAG(minoltaSonyRotation)(os, value, metadata);
}
// ----------------------------------------------------------------------------------------------------
//! Lookup table to translate Minolta/Sony scene mode values to readable labels
extern const TagDetails minoltaSonySceneMode[] = {
{ 0, N_("Standard") },
{ 1, N_("Portrait") },
{ 2, N_("Text") },
{ 3, N_("Night Scene") },
{ 4, N_("Sunset") },
{ 5, N_("Sports") },
{ 6, N_("Landscape") },
{ 7, N_("Night Portrait") },
{ 8, N_("Macro") },
{ 9, N_("Super Macro") },
{ 16, N_("Auto") },
{ 17, N_("Night View/Portrait") }
};
std::ostream& printMinoltaSonySceneMode(std::ostream& os, const Value& value, const ExifData* metadata)
{
return EXV_PRINT_TAG(minoltaSonySceneMode)(os, value, metadata);
}
} // namespace Exiv2

View File

@ -70,6 +70,9 @@ namespace Exiv2 {
//! Print Minolta/Sony Rotation values to readable labels.
EXIV2API std::ostream& printMinoltaSonyRotation(std::ostream&, const Value&, const ExifData*);
//! Print Minolta/Sony Scene Mode values to readable labels.
EXIV2API std::ostream& printMinoltaSonySceneMode(std::ostream&, const Value&, const ExifData*);
// TODO: Added shared methods here.
} // namespace Exiv2

View File

@ -108,22 +108,6 @@ namespace Exiv2 {
{ 275, "DSLR-A450" }
};
//! Lookup table to translate Sony scene mode values to readable labels
extern const TagDetails sonySceneMode[] = {
{ 0, N_("Standard") },
{ 1, N_("Portrait") },
{ 2, N_("Text") },
{ 3, N_("Night Scene") },
{ 4, N_("Sunset") },
{ 5, N_("Sports") },
{ 6, N_("Landscape") },
{ 7, N_("Night Portrait") },
{ 8, N_("Macro") },
{ 9, N_("Super Macro") },
{ 16, N_("Auto") },
{ 17, N_("Night View/Portrait") }
};
//! Lookup table to translate Sony zone matching values to readable labels
extern const TagDetails sonyZoneMatching[] = {
{ 0, N_("ISO Setting Used") },
@ -315,7 +299,7 @@ namespace Exiv2 {
sony1IfdId, makerTags, unsignedLong, printValue),
TagInfo(0xb023, "SceneMode", N_("Scene Mode"),
N_("Scene Mode"),
sony1IfdId, makerTags, unsignedLong, EXV_PRINT_TAG(sonySceneMode)),
sony1IfdId, makerTags, unsignedLong, printMinoltaSonySceneMode),
TagInfo(0xb024, "ZoneMatching", N_("Zone Matching"),
N_("Zone Matching"),
sony1IfdId, makerTags, unsignedLong, EXV_PRINT_TAG(sonyZoneMatching)),