QGroundControl
Ground Control Station for MAVLink Drones
Loading...
Searching...
No Matches
ExifUtility.cc File Reference
#include "ExifUtility.h"
#include "QGCLoggingCategory.h"
#include <cassert>
#include <cmath>
+ Include dependency graph for ExifUtility.cc:

Go to the source code of this file.

Namespaces

namespace  ExifUtility
 

Functions

ExifData * ExifUtility::loadFromBuffer (const QByteArray &buffer)
 
ExifData * ExifUtility::createNew ()
 
bool ExifUtility::saveToBuffer (ExifData *data, QByteArray &buffer)
 
bool ExifUtility::isJpeg (const QByteArray &buffer)
 Check if a buffer is a JPEG image (starts with 0xFF 0xD8)
 
bool ExifUtility::isTiff (const QByteArray &buffer)
 
bool ExifUtility::hasExifData (const QByteArray &buffer)
 Check if a buffer contains valid JPEG with EXIF data.
 
QString ExifUtility::readString (ExifData *data, ExifTag tag, ExifIfd ifd=EXIF_IFD_0)
 Read a string value from an EXIF tag.
 
int ExifUtility::readShort (ExifData *data, ExifTag tag, ExifIfd ifd=EXIF_IFD_0)
 Read a short (16-bit) value from an EXIF tag.
 
double ExifUtility::readRational (ExifData *data, ExifTag tag, ExifIfd ifd=EXIF_IFD_0)
 Read a rational value from an EXIF tag.
 
ExifEntry * ExifUtility::initTag (ExifData *data, ExifIfd ifd, ExifTag tag)
 
ExifEntry * ExifUtility::createTag (ExifData *data, ExifIfd ifd, ExifTag tag, ExifFormat format, unsigned long components)
 
double ExifUtility::gpsRationalToDecimal (ExifEntry *entry, ExifByteOrder order)
 Convert GPS coordinate from EXIF rational format (deg/min/sec) to decimal degrees.
 
void ExifUtility::writeGpsCoordinate (ExifEntry *entry, ExifByteOrder order, double value)
 Write GPS coordinate as EXIF rationals (degrees, minutes, seconds)
 
void ExifUtility::writeRational (ExifEntry *entry, ExifByteOrder order, double value, int denominator=100)
 Write a single rational value to an entry.
 
void ExifUtility::writeGpsRef (ExifEntry *entry, char value)
 Write an ASCII character to a GPS reference entry (N/S/E/W)
 
void ExifUtility::writeGpsAltRef (ExifEntry *entry, unsigned char value)
 Write a byte value to a GPS altitude reference entry (0=above, 1=below sea level)
 
bool ExifUtility::writeDateTimeOriginal (ExifData *data, const QDateTime &dateTime)