#ifndef __Trivial_Handler_hpp__ #define __Trivial_Handler_hpp__ 1 // ================================================================================================= // Copyright Adobe // Copyright 2004 Adobe // All Rights Reserved // // NOTICE: Adobe permits you to use, modify, and distribute this file in accordance with the terms // of the Adobe license agreement accompanying it. // ================================================================================================= #include "XMPFiles/source/XMPFiles_Impl.hpp" // ================================================================================================= /// \file Trivial_Handler.hpp /// \brief Base class for trivial handlers that only process in-place XMP. /// /// This header ... /// /// \note There is no general promise here about crash-safe I/O. An update to an existing file might /// have invalid partial state while rewriting existing XMP in-place. Crash-safe updates are managed /// at a higher level of XMPFiles, using a temporary file and final swap of file content. /// // ================================================================================================= static const XMP_OptionBits kTrivial_HandlerFlags = ( kXMPFiles_AllowsOnlyXMP | kXMPFiles_ReturnsRawPacket | kXMPFiles_AllowsSafeUpdate ); class Trivial_MetaHandler : public XMPFileHandler { public: Trivial_MetaHandler() {}; ~Trivial_MetaHandler(); virtual void CacheFileData() = 0; void UpdateFile ( bool doSafeUpdate ); void WriteTempFile ( XMP_IO* tempRef ); }; // Trivial_MetaHandler // ================================================================================================= #endif /* __Trivial_Handler_hpp__ */