 |
constructor Create (AMapped: Boolean = True); reintroduce; virtual; |
 |
procedure AfterConstruction; override; |
 |
procedure BeforeDestruction; override; |
 |
function IsValidXMP (AXmp: TxomStrings): Boolean; |
 |
function XMLValueFromContent (AParam: TMacroParam): WideString; |
 |
function ContentFromXMLValue (AParam: TMacroParam; const AValue: Variant): Variant; |
 |
procedure InitializeFromTif (ATif: TTif; AProcessTiff: Boolean = True; AProcessExif: Boolean = True; AProcessIPTC: Boolean = True; AProcessXMP: Boolean = False; AUpdateState: TTifToXMPUpdateState = txusAll); |
 |
procedure InitializeFromTifFile (const AFileName: WideString; AProcessTiff: Boolean = True; AProcessExif: Boolean = True; AProcessIPTC: Boolean = True; AMapFromExifAndIPTC: Boolean = False); |
 |
procedure PushToTif (ATif: TTif); |
 |
function AddPropertyToDesign (const AProperty: WideString): TMacroParam; |
 |
function AddParamToDesign (AParam: TMacroParam; AIsMappedParam: Boolean): TMacroParam; |
 |
procedure DumpToStrings(AResult: TxomStrings); virtual; |
 |
procedure DumpParamsToStrings(AResult: TxomStrings); virtual; |
 |
function AddKeywords (AKeywords: TxomStrings; AFullReplace: Boolean): TMacroParam; |
 |
function EnumKeywords (AKeywords: TxomStrings): Boolean; |
 |
procedure RemoveTechnical (AFull: Boolean = False; AMultiMode: Boolean = False); |
 |
procedure RemoveEmpty; |
 |
procedure RemoveNonCascadable (AList: TxomStringList = nil); |
 |
function RemoveRecipe: Boolean; |
 |
procedure ChangeEditStateForFilled (ANewState: TMacroParamEditState); |
 |
function HasTechnical: Boolean; |
 |
procedure IntersectWithXMP(AXmp: TXMP); virtual; |
 |
procedure DifferenceWithXMP(AXmp: TXMP); virtual; |
 |
procedure AppendXMP(AXmp: TXMP); virtual; |
 |
procedure MergeXMP(AXmp: TXMP); virtual; |
 |
function Load (const AFileName, AHostFileName: WideString; ACheckIPTC: Boolean): Boolean; |
 |
function Save (const AFileName, AHostFileName: WideString; AUpdateIPTC: Boolean): Boolean; |
 |
function LoadFromImage (const AFileName: WideString; ACheckIPTC: Boolean = True): Boolean; |
 |
function SaveToImage (const AFileName: WideString; AUpdateIPTC: Boolean = True): Boolean; |
 |
function LoadFromFile (const AFileName: WideString): Boolean; |
 |
procedure LoadFromResourceStream (AStream: TStream; const ASchemaURL: WideString = ''); |
 |
procedure LoadFromStream (AStream: TStream); |
 |
procedure SaveToStream (AStream: TStream); |
 |
procedure SaveToResourceStream (AStream: TStream); |
 |
function SaveToFile (const AFileName, AHostFileName: WideString): Boolean; |
 |
function SaveToStrings (AStrings: TxomStrings; ANeatFormatted: Boolean = False): Boolean; |
 |
function LoadFromStrings (AStrings: TxomStrings; const ASchemaURL: WideString = ''): Boolean; |
 |
function SaveAsString: WideString; |
 |
function LoadFromString (const AString: WideString): Boolean; |
 |
function ImportFromFile (const AFileName: WideString; AOnlyFilled: Boolean = True; AMultiStates: Boolean = False): Boolean; |
 |
function ImportFromStrings (AStrings: TxomStrings; AOnlyFilled: Boolean = True; AMultiStates: Boolean = False): Boolean; |
 |
function ImportFromXMP (AXMP: TXMP; AOnlyFilled: Boolean = True; AMultiStates: Boolean = False): Boolean; |
 |
procedure ImportMeta (const AFileName: WideString; AProcessTiff: Boolean = True; AProcessExif: Boolean = True; AProcessIPTC: Boolean = True); |
 |
procedure RemoveParamCommands (AList: TxomStrings); |
 |
procedure RemoveParam (const AParamCommand: WideString); |
 |
procedure PostLoad (const AHostFileName: WideString; ATifUpdateState: TTifToXMPUpdateState = txusAll); |
 |
procedure AddGPSStamp (ALat, ALon, AAlt: Double; AGPSStampDate: TDateTime = 0); |
 |
function GetGPSStamp (out ALat: Double; out ALon: Double; out AAlt: Double; out AGPSStampDate: TDateTime): Boolean; |
 |
procedure SetGPSGMTStamp (ALat, ALon, AAlt: Double; AGPSStampDate: TDateTime = 0; ATimeZoneOffset: Double = 0); |
 |
function GetGPSGMTStamp (out ALat: Double; out ALon: Double; out AAlt: Double; out AGPSStampDate: TDateTime): Boolean; |
 |
procedure RemoveExif; |
 |
procedure RemoveGPS; |
 |
function GEOForwardLookup (const ALocation: WideString; const ALanguage: String): Boolean; |
 |
function GEOReverseLookup (ALat, ALon: Double; const ALanguage: String): Boolean; |
 |
function GEOLookupAltitude (ALat, ALon: Double): Boolean; |
 |
function MapToIPTC (ATif: TTif): Boolean; overload; |
 |
function MapToIPTC (const AFileName: WideString): Boolean; overload; |
 |
function MapFromIPTC (ATif: TTif): Boolean; overload; |
 |
function MapFromIPTC (const AFileName: WideString): Boolean; overload; |
 |
function MapFromExif (ATif: TTif; ACheckXMP: Boolean = False): Boolean; overload; |
 |
function MapFromExif (const AFileName: WideString; ACheckXMP: Boolean = False): Boolean; overload; |
 |
function MapFromExifAndIPTC (ATif: TTif; ACheckXMP: Boolean = False): Boolean; overload; |
 |
function MapFromExifAndIPTC (const AFileName: WideString; ACheckXMP: Boolean = False): Boolean; overload; |
 |
procedure ImportParams (AParams: TMacroParams; AIsMappedParams: Boolean; AUpdateXml: Boolean = False; AOnlyFilled: Boolean = True; AMultiStates: Boolean = False; AUpdateEditStates: Boolean = True); |
 |
function QuickSetProperty (const ANamespace: WideString; const APropertyName: WideString; const AValue: Variant): TMacroParam; |
 |
function QuickGetProperty (const ANamespace: WideString; const APropertyName: WideString): Variant; |
 |
function QuickRemoveProperty (const ANamespace: WideString; const APropertyName: WideString): Boolean; |
 |
function FindProperty (AModel: TXMPModel; const ANamespace, ATag: WideString): TMacroParam; |
 |
function FindModelProperty (const ANamespace, ATag: WideString): TMacroParam; |
 |
function FindDesignProperty (const ANamespace, ATag: WideString): TMacroParam; |
 |
procedure Reset; virtual; |
 |
procedure DeleteRecipe; |
 |
function PhotoDate(AZulu: Boolean = False): TDateTime; |
 |
function PhotoDateOriginal: TDateTime; |
 |
function PhotoDateDigitized: TDateTime; |
 |
function PhotoDateDescription: TDateTime; |
 |
function Orientation: TTifOrientation; |
 |
function DimensionsXY(var AWidth, AHeight: Integer): WideString; |
 |
function Dimensions: WideString; |
 |
procedure UpdateDimensionsXY(AWidth, AHeight: Integer); |
 |
function Resolution: WideString; |
 |
function ShortExifString (const ASeparator: WideString = ' '; const AWithTitles: Boolean = False): WideString; |
 |
function ShorterExifString (const ASeparator: WideString = ' '; const AWithTitles: Boolean = False): WideString; |
 |
property FileName: WideString read FFileName write FFilename; |
 |
property XMPDesign: TXMPModel read FXMPDesign write FXMPDesign; |
 |
property XMLDocument: TXMLDocument read FXMLDocument; |
 |
property HasXMP: Boolean read GetHasXMP; |
 |
property HasGPS: Boolean read GetHasGPS; |
 |
property HasRecipe: Boolean read GetRecipe; |
 |
property Changed: Boolean read FChanged write FChanged; |
 |
property AutoCheckIPTC: Boolean read FAutoCheckIPTC write FAutoCheckIPTC; |
 |
property UpdateMetadataDate: Boolean read FUpdateMetadataDate write FUpdateMetadataDate; |
 |
property AdditiveArrayMode: Boolean read FAdditiveArrayMode write FAdditiveArrayMode; |
 |
property HashKey: AnsiString read GetHashKey; |
 |
property StoredHashKey: AnsiString read FStoredHashKey write FStoredHashKey; |
 |
property CleanRead: Boolean read FCleanRead write FCleanRead; |
 |
property _ConvertToXMPOnlyWhenNoTechnical: Boolean read F_ConvertToXMPOnlyWhenNoTechnical write F_ConvertToXMPOnlyWhenNoTechnical; |
 |
property Text: WideString read FText write FText; |
 |
property ReadUnknownSchemas: Boolean read FReadUnknownSchemas write FReadUnknownSchemas; |
 |
property Mapped: Boolean read FMapped write SetMapped; |
 |
property KeepHistory: Boolean read FKeepHistory write FKeepHistory; |
 |
property StorePreservedFileName: Boolean read FStorePreservedFileName write FStorePreservedFileName; |