fix(video) clang-format quicktimevideo

main
Christoph Hasse 3 years ago
parent 9afb877324
commit 3456f30988

@ -34,207 +34,206 @@ namespace Exiv2 {
// ***************************************************************************** // *****************************************************************************
// class definitions // class definitions
/*! /*!
@brief Class to access QuickTime video files. @brief Class to access QuickTime video files.
*/ */
class QuickTimeVideo:public Image class QuickTimeVideo : public Image {
{ public:
public: //! @name Creators
//! @name Creators //@{
//@{ /*!
/*! @brief Constructor for a QuickTime video. Since the constructor
@brief Constructor for a QuickTime video. Since the constructor can not return a result, callers should check the good() method
can not return a result, callers should check the good() method after object construction to determine success or failure.
after object construction to determine success or failure. @param io An auto-pointer that owns a BasicIo instance used for
@param io An auto-pointer that owns a BasicIo instance used for reading and writing image metadata. \b Important: The constructor
reading and writing image metadata. \b Important: The constructor takes ownership of the passed in BasicIo instance through the
takes ownership of the passed in BasicIo instance through the auto-pointer. Callers should not continue to use the BasicIo
auto-pointer. Callers should not continue to use the BasicIo instance after it is passed to this method. Use the Image::io()
instance after it is passed to this method. Use the Image::io() method to get a temporary reference.
method to get a temporary reference. */
*/ QuickTimeVideo(BasicIo::UniquePtr io);
QuickTimeVideo(BasicIo::UniquePtr io); //@}
//@}
//! @name Manipulators
//! @name Manipulators //@{
//@{ void readMetadata();
void readMetadata(); void writeMetadata();
void writeMetadata(); //@}
//@}
//! @name Accessors
//! @name Accessors //@{
//@{ std::string mimeType() const;
std::string mimeType() const; //@}
//@}
protected:
protected: /*!
/*! @brief Check for a valid tag and decode the block at the current IO
@brief Check for a valid tag and decode the block at the current IO position. Calls tagDecoder() or skips to next tag, if required.
position. Calls tagDecoder() or skips to next tag, if required. */
*/ void decodeBlock();
void decodeBlock(); /*!
/*! @brief Interpret tag information, and call the respective function
@brief Interpret tag information, and call the respective function to save it in the respective XMP container. Decodes a Tag
to save it in the respective XMP container. Decodes a Tag Information and saves it in the respective XMP container, if
Information and saves it in the respective XMP container, if the block size is small.
the block size is small. @param buf Data buffer which cotains tag ID.
@param buf Data buffer which cotains tag ID. @param size Size of the data block used to store Tag Information.
@param size Size of the data block used to store Tag Information. */
*/ void tagDecoder(Exiv2::DataBuf& buf, uint64_t size);
void tagDecoder(Exiv2::DataBuf & buf, unsigned long size);
private:
private: /*!
/*! @brief Interpret file type of the video, and save it
@brief Interpret file type of the video, and save it in the respective XMP container.
in the respective XMP container. @param size Size of the data block used to store Tag Information.
@param size Size of the data block used to store Tag Information. */
*/ void fileTypeDecoder(uint64_t size);
void fileTypeDecoder(unsigned long size); /*!
/*! @brief Interpret Media Header Tag, and save it
@brief Interpret Media Header Tag, and save it in the respective XMP container.
in the respective XMP container. @param size Size of the data block used to store Tag Information.
@param size Size of the data block used to store Tag Information. */
*/ void mediaHeaderDecoder(uint64_t size);
void mediaHeaderDecoder(unsigned long size); /*!
/*! @brief Interpret Video Header Tag, and save it
@brief Interpret Video Header Tag, and save it in the respective XMP container.
in the respective XMP container. @param size Size of the data block used to store Tag Information.
@param size Size of the data block used to store Tag Information. */
*/ void videoHeaderDecoder(uint64_t size);
void videoHeaderDecoder(unsigned long size); /*!
/*! @brief Interpret Movie Header Tag, and save it
@brief Interpret Movie Header Tag, and save it in the respective XMP container.
in the respective XMP container. @param size Size of the data block used to store Tag Information.
@param size Size of the data block used to store Tag Information. */
*/ void movieHeaderDecoder(uint64_t size);
void movieHeaderDecoder(unsigned long size); /*!
/*! @brief Interpret Track Header Tag, and save it
@brief Interpret Track Header Tag, and save it in the respective XMP container.
in the respective XMP container. @param size Size of the data block used to store Tag Information.
@param size Size of the data block used to store Tag Information. */
*/ void trackHeaderDecoder(uint64_t size);
void trackHeaderDecoder(unsigned long size); /*!
/*! @brief Interpret Handler Tag, and save it
@brief Interpret Handler Tag, and save it in the respective XMP container.
in the respective XMP container. @param size Size of the data block used to store Tag Information.
@param size Size of the data block used to store Tag Information. */
*/ void handlerDecoder(uint64_t size);
void handlerDecoder(unsigned long size); /*!
/*! @brief Interpret Tag which contain other sub-tags,
@brief Interpret Tag which contain other sub-tags, and save it in the respective XMP container.
and save it in the respective XMP container. */
*/ void multipleEntriesDecoder();
void multipleEntriesDecoder(); /*!
/*! @brief Interpret Sample Description Tag, and save it
@brief Interpret Sample Description Tag, and save it in the respective XMP container.
in the respective XMP container. @param size Size of the data block used to store Tag Information.
@param size Size of the data block used to store Tag Information. */
*/ void sampleDesc(uint64_t size);
void sampleDesc(unsigned long size); /*!
/*! @brief Interpret Image Description Tag, and save it
@brief Interpret Image Description Tag, and save it in the respective XMP container.
in the respective XMP container. */
*/ void imageDescDecoder();
void imageDescDecoder(); /*!
/*! @brief Interpret User Data Tag, and save it
@brief Interpret User Data Tag, and save it in the respective XMP container.
in the respective XMP container. @param size Size of the data block used to store Tag Information.
@param size Size of the data block used to store Tag Information. */
*/ void userDataDecoder(uint64_t size);
void userDataDecoder(unsigned long size); /*!
/*! @brief Interpret Preview Tag, and save it
@brief Interpret Preview Tag, and save it in the respective XMP container.
in the respective XMP container. @param size Size of the data block used to store Tag Information.
@param size Size of the data block used to store Tag Information. */
*/ void previewTagDecoder(uint64_t size);
void previewTagDecoder(unsigned long size); /*!
/*! @brief Interpret Meta Keys Tags, and save it
@brief Interpret Meta Keys Tags, and save it in the respective XMP container.
in the respective XMP container. @param size Size of the data block used to store Tag Information.
@param size Size of the data block used to store Tag Information. */
*/ void keysTagDecoder(uint64_t size);
void keysTagDecoder(unsigned long size); /*!
/*! @brief Interpret Track Aperture Tags, and save it
@brief Interpret Track Aperture Tags, and save it in the respective XMP container.
in the respective XMP container. @param size Size of the data block used to store Tag Information.
@param size Size of the data block used to store Tag Information. */
*/ void trackApertureTagDecoder(uint64_t size);
void trackApertureTagDecoder(unsigned long size); /*!
/*! @brief Interpret Nikon Tag, and save it
@brief Interpret Nikon Tag, and save it in the respective XMP container.
in the respective XMP container. @param size Size of the data block used to store Tag Information.
@param size Size of the data block used to store Tag Information. */
*/ void NikonTagsDecoder(uint64_t size);
void NikonTagsDecoder(unsigned long size); /*!
/*! @brief Interpret Tags from Different Camera make, and save it
@brief Interpret Tags from Different Camera make, and save it in the respective XMP container.
in the respective XMP container. @param size Size of the data block used to store Tag Information.
@param size Size of the data block used to store Tag Information. */
*/ void CameraTagsDecoder(uint64_t size);
void CameraTagsDecoder(unsigned long size); /*!
/*! @brief Interpret Audio Description Tag, and save it
@brief Interpret Audio Description Tag, and save it in the respective XMP container.
in the respective XMP container. */
*/ void audioDescDecoder();
void audioDescDecoder(); /*!
/*! @brief Helps to calculate Frame Rate from timeToSample chunk,
@brief Helps to calculate Frame Rate from timeToSample chunk, and save it in the respective XMP container.
and save it in the respective XMP container. */
*/ void timeToSampleDecoder();
void timeToSampleDecoder(); /*!
/*! @brief Recognizes which stream is currently under processing,
@brief Recognizes which stream is currently under processing, and save its information in currentStream_ .
and save its information in currentStream_ . */
*/ void setMediaStream();
void setMediaStream(); /*!
/*! @brief Used to discard a tag along with its data. The Tag will
@brief Used to discard a tag along with its data. The Tag will be skipped and not decoded.
be skipped and not decoded. @param size Size of the data block that is to skipped.
@param size Size of the data block that is to skipped. */
*/ void discard(uint64_t size);
void discard(unsigned long size); /*!
/*! @brief Calculates Aspect Ratio of a video, and stores it in the
@brief Calculates Aspect Ratio of a video, and stores it in the respective XMP container.
respective XMP container. */
*/ void aspectRatio();
void aspectRatio();
private:
private: //! @name NOT Implemented
//! @name NOT Implemented //@{
//@{ //! Copy constructor
//! Copy constructor QuickTimeVideo(const QuickTimeVideo& rhs);
QuickTimeVideo(const QuickTimeVideo& rhs); //! Assignment operator
//! Assignment operator QuickTimeVideo& operator=(const QuickTimeVideo& rhs);
QuickTimeVideo& operator=(const QuickTimeVideo& rhs); //@}
//@}
private:
private: //! Variable which stores Time Scale unit, used to calculate time.
//! Variable which stores Time Scale unit, used to calculate time. uint64_t timeScale_;
uint64_t timeScale_; //! Variable which stores current stream being processsed.
//! Variable which stores current stream being processsed. int currentStream_;
int currentStream_; //! Variable to check the end of metadata traversing.
//! Variable to check the end of metadata traversing. bool continueTraversing_;
bool continueTraversing_; //! Variable to store height and width of a video frame.
//! Variable to store height and width of a video frame. uint64_t height_, width_;
uint64_t height_, width_;
}; // QuickTimeVideo End
}; //QuickTimeVideo End
// ***************************************************************************** // *****************************************************************************
// template, inline and free functions // template, inline and free functions
// These could be static private functions on Image subclasses but then // These could be static private functions on Image subclasses but then
// ImageFactory needs to be made a friend. // ImageFactory needs to be made a friend.
/*! /*!
@brief Create a new QuicktimeVideo instance and return an auto-pointer to it. @brief Create a new QuicktimeVideo instance and return an auto-pointer to it.
Caller owns the returned object and the auto-pointer ensures that Caller owns the returned object and the auto-pointer ensures that
it will be deleted. it will be deleted.
*/ */
Image::UniquePtr newQTimeInstance(BasicIo::UniquePtr io, bool create); Image::UniquePtr newQTimeInstance(BasicIo::UniquePtr io, bool create);
//! Check if the file iIo is a Quick Time Video. //! Check if the file iIo is a Quick Time Video.
bool isQTimeType(BasicIo& iIo, bool advance); bool isQTimeType(BasicIo& iIo, bool advance);
} // namespace Exiv2 } // namespace Exiv2
#endif // QUICKTIMEVIDEO_HPP #endif // QUICKTIMEVIDEO_HPP

@ -29,6 +29,7 @@
#include "orfimage.hpp" #include "orfimage.hpp"
#include "pgfimage.hpp" #include "pgfimage.hpp"
#include "psdimage.hpp" #include "psdimage.hpp"
#include "quicktimevideo.hpp"
#include "rafimage.hpp" #include "rafimage.hpp"
#include "rw2image.hpp" #include "rw2image.hpp"
#include "tags_int.hpp" #include "tags_int.hpp"
@ -36,7 +37,6 @@
#include "tiffimage.hpp" #include "tiffimage.hpp"
#include "webpimage.hpp" #include "webpimage.hpp"
#include "xmpsidecar.hpp" #include "xmpsidecar.hpp"
#include "quicktimevideo.hpp"
// + standard includes // + standard includes
#include <array> #include <array>
@ -99,7 +99,7 @@ constexpr auto registry = std::array{
Registry{ImageType::jp2, newJp2Instance, isJp2Type, amReadWrite, amReadWrite, amReadWrite, amNone}, Registry{ImageType::jp2, newJp2Instance, isJp2Type, amReadWrite, amReadWrite, amReadWrite, amNone},
// needs to be before bmff because some ftyp files are handled as qt and // needs to be before bmff because some ftyp files are handled as qt and
// the rest should fall through to bmff // the rest should fall through to bmff
Registry{ ImageType::qtime,newQTimeInstance,isQTimeType,amRead,amNone, amRead, amNone}, Registry{ImageType::qtime, newQTimeInstance, isQTimeType, amRead, amNone, amRead, amNone},
#ifdef EXV_ENABLE_BMFF #ifdef EXV_ENABLE_BMFF
Registry{ImageType::bmff, newBmffInstance, isBmffType, amRead, amRead, amRead, amNone}, Registry{ImageType::bmff, newBmffInstance, isBmffType, amRead, amRead, amRead, amNone},
#endif // EXV_ENABLE_BMFF #endif // EXV_ENABLE_BMFF

File diff suppressed because it is too large Load Diff
Loading…
Cancel
Save