nn::jpeg::CTR::GpsData Structurestruct GpsData
{
bool isVersionIdValid;
bool isLatitudeValid;
bool isLongitudeValid;
bool isAltitudeRefValid;
bool isAltitudeValid;
bool isTimeStampValid;
bool isDopValid;
bool isSpeedValid;
bool isTrackValid;
bool isImgDirectionValid;
bool isDestLatitudeValid;
bool isDestLongitudeValid;
bool isDestBearingValid;
bool isDestDistanceValid;
bool isDifferentialValid;
u8 altitudeRef;
u8 versionId[GPS_VERSION_ID_SIZE];
char latitudeRef[GPS_REF_SIZE];
char longitudeRef[GPS_REF_SIZE];
char status[GPS_REF_SIZE];
char measureMode[GPS_REF_SIZE];
char speedRef[GPS_REF_SIZE];
char trackRef[GPS_REF_SIZE];
char imgDirectionRef[GPS_REF_SIZE];
char destLatitudeRef[GPS_REF_SIZE];
char destLongitudeRef[GPS_REF_SIZE];
char destBearingRef[GPS_REF_SIZE];
char destDistanceRef[GPS_REF_SIZE];
u16 differential;
Rational latitude[NUM_GPS_LATITUDE_RATIONALS];
Rational longitude[NUM_GPS_LONGITUDE_RATIONALS];
Rational altitude;
Rational timeStamp[NUM_GPS_TIME_STAMP_RATIONALS];
const char * pSatellites;
Rational dop;
Rational speed;
Rational track;
Rational imgDirection;
const char * pMapDatum;
Rational destLatitude[NUM_GPS_LATITUDE_RATIONALS];
Rational destLongitude[NUM_GPS_LONGITUDE_RATIONALS];
Rational destBearing;
Rational destDistance;
const u8 * pProcessingMethod;
size_t processingMethodSize;
const u8 * pAreaInformation;
size_t areaInformationSize;
const char * pDateStamp;
};
This structure maintains GPS IFD in a format easily processed by the library.
To get information after decoding (after EXIF information has been extracted), use JpegMpDecoder::GetLastGpsData.
To register information before encoding, first initialize the structure using JpegMpEncoder::InitializeGpsData and then register data using JpegMpEncoder::SetGpsLatitude, for example. Finally, confirm the contents of the structure using JpegMpEncoder::SetGpsData.
| isVersionIdValid | bool | Indicates whether the versionID is valid. |
|
|---|---|---|---|
| isLatitudeValid | bool | Indicates whether latitude is valid. |
|
| isLongitudeValid | bool | Indicates whether longitude is valid. |
|
| isAltitudeRefValid | bool | Indicates whether altitudeRef is valid. |
|
| isAltitudeValid | bool | Indicates whether altitude is valid. |
|
| isTimeStampValid | bool | Indicates whether timeStamp is valid. |
|
| isDopValid | bool | Indicates whether DOP is valid. |
|
| isSpeedValid | bool | Indicates whether speed is valid. |
|
| isTrackValid | bool | Indicates whether track is valid. |
|
| isImgDirectionValid | bool | Indicates whether imgDirection is valid. |
|
| isDestLatitudeValid | bool | Indicates whether destLatitude is valid. |
|
| isDestLongitudeValid | bool | Indicates whether destLongitude is valid. |
|
| isDestBearingValid | bool | Indicates whether destBearing is valid. |
|
| isDestDistanceValid | bool | Indicates whether destDistance is valid. |
|
| isDifferentialValid | bool | Indicates whether differential is valid. |
|
| altitudeRef | u8 | Represents the altitude reference. |
|
| versionId | u8 | Represents the GPS tag version. | |
| latitudeRef | char |
Represents North (N) or South (S). Valid if element 0 is not 0. Element [1] is always 0. | |
| longitudeRef | char |
Represents East (E) or West (W) Valid if element 0 is not 0. Element [1] is always 0. | |
| status | char |
Represents the GPS receiver status. Valid if element 0 is not 0. Element [1] is always 0. | |
| measureMode | char |
Represents the GPS measurement method. Valid if element 0 is not 0. Element [1] is always 0. | |
| speedRef | char |
Represents the velocity unit. Valid if element 0 is not 0. Element [1] is always 0. | |
| trackRef | char |
Represents the tracking direction. Valid if element 0 is not 0. Element [1] is always 0. | |
| imgDirectionRef | char |
Represents the orientation of the captured image. Valid if element 0 is not 0. Element [1] is always 0. | |
| destLatitudeRef | char |
Represents North (N) or South (S) latitude of the destination. Valid if element 0 is not 0. Element [1] is always 0. | |
| destLongitudeRef | char |
Represents East (E) or West (W) longitude of the destination. Valid if element 0 is not 0. Element [1] is always 0. | |
| destBearingRef | char |
Represents the bearing to the destination. Valid if element 0 is not 0. Element [1] is always 0. | |
| destDistanceRef | char |
Represents the distance to the destination. Valid if element 0 is not 0. Element [1] is always 0. | |
| differential | u16 | Represents the GPS differential. | |
latitude
|
Rational | Represents the latitude (numeric value). | |
longitude
|
Rational | Represents the longitude (numeric value). | |
| altitude | Rational | Represents the altitude (numeric value). | |
| timeStamp | Rational | Represents the GPS time (atomic clock time) | |
| pSatellites | const char * | Represents the satellite signal used for positioning. Valid unless NULL. |
|
| dop | Rational | Represents the reliability (dilution of precision) of the position. | |
| speed | Rational | Represents the speed (numeric value). | |
| track | Rational | Represents the tracking direction (numeric value). | |
| imgDirection | Rational | Represents the orientation of the captured image. | |
| pMapDatum | const char * | Represents map data used for positioning. Valid unless NULL. |
|
| destLatitude | Rational | Represents the latitude of the destination (numeric value). | |
| destLongitude | Rational | Represents the longitude of the destination (numeric value). | |
| destBearing | Rational | Represents the destination bearing (numeric value). | |
| destDistance | Rational | Represents the distance to the destination (numeric value). | |
| pProcessingMethod | const u8 * | Represents the name of the positioning method. Valid unless NULL. |
|
| processingMethodSize | size_t | Represents the data size in bytes of pProcessingMethod. Valid unless 0. |
|
| pAreaInformation | const u8 * | Represents the name of the identified area. Valid unless NULL. |
|
| areaInformationSize | size_t | Represents the size in bytes of pAreaInformation. Valid unless 0. |
|
| pDateStamp | const char * | Represents the GPS date stamp. Valid unless NULL. |
CONFIDENTIAL