Lines Matching refs:writer

55 #define BAIL_IF_INVALID_RET_BOOL(expr, jnienv, tagId, writer) \
58 "Invalid metadata for tag %s (%x)", (writer)->getTagName(tagId), (tagId)); \
63 #define BAIL_IF_INVALID_RET_NULL_SP(expr, jnienv, tagId, writer) \
66 "Invalid metadata for tag %s (%x)", (writer)->getTagName(tagId), (tagId)); \
71 #define BAIL_IF_INVALID_R(expr, jnienv, tagId, writer) \
74 "Invalid metadata for tag %s (%x)", (writer)->getTagName(tagId), (tagId)); \
78 #define BAIL_IF_EMPTY_RET_NULL_SP(entry, jnienv, tagId, writer) \
81 "Missing metadata fields for tag %s (%x)", (writer)->getTagName(tagId), (tagId)); \
85 #define BAIL_IF_EXPR_RET_NULL_SP(expr, jnienv, tagId, writer) \
88 "Invalid metadata for tag %s (%x)", (writer)->getTagName(tagId), (tagId)); \
771 sp<TiffWriter> writer) {
792 BAIL_IF_INVALID_R(writer->addEntry(TAG_DEFAULTCROPORIGIN, 2, defaultCropOrigin,
793 TIFF_IFD_0), env, TAG_DEFAULTCROPORIGIN, writer);
794 BAIL_IF_INVALID_R(writer->addEntry(TAG_DEFAULTCROPSIZE, 2, defaultCropSize,
795 TIFF_IFD_0), env, TAG_DEFAULTCROPSIZE, writer);
800 static bool validateDngHeader(JNIEnv* env, sp<TiffWriter> writer,
838 static status_t moveEntries(sp<TiffWriter> writer, uint32_t ifdFrom, uint32_t ifdTo,
842 sp<TiffEntry> entry = writer->getEntry(tagId, ifdFrom);
848 if (writer->addEntry(entry, ifdTo) != OK) {
853 writer->removeEntry(tagId, ifdFrom);
1062 sp<TiffWriter> writer = new TiffWriter();
1070 BAIL_IF_EMPTY_RET_NULL_SP(entry, env, TAG_IMAGEWIDTH, writer);
1090 writer->addIfd(TIFF_IFD_0);
1109 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_ORIENTATION, 1, &orientation, TIFF_IFD_0),
1110 env, TAG_ORIENTATION, writer);
1116 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_NEWSUBFILETYPE, 1, &subfileType,
1117 TIFF_IFD_0), env, TAG_NEWSUBFILETYPE, writer);
1123 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_BITSPERSAMPLE, 1, &bits, TIFF_IFD_0), env,
1124 TAG_BITSPERSAMPLE, writer);
1130 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_COMPRESSION, 1, &compression,
1131 TIFF_IFD_0), env, TAG_COMPRESSION, writer);
1136 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_IMAGEWIDTH, 1, &imageWidth, TIFF_IFD_0),
1137 env, TAG_IMAGEWIDTH, writer);
1138 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_IMAGELENGTH, 1, &imageHeight, TIFF_IFD_0),
1139 env, TAG_IMAGELENGTH, writer);
1145 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_PHOTOMETRICINTERPRETATION, 1,
1146 &interpretation, TIFF_IFD_0), env, TAG_PHOTOMETRICINTERPRETATION, writer);
1155 BAIL_IF_EXPR_RET_NULL_SP(entry.count != 4, env, TAG_BLACKLEVEL, writer);
1163 BAIL_IF_EXPR_RET_NULL_SP(entry.count != 4, env, TAG_BLACKLEVEL, writer);
1170 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_BLACKLEVEL, 4, blackLevelRational,
1171 TIFF_IFD_0), env, TAG_BLACKLEVEL, writer);
1174 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_BLACKLEVELREPEATDIM, 2, repeatDim,
1175 TIFF_IFD_0), env, TAG_BLACKLEVELREPEATDIM, writer);
1181 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_SAMPLESPERPIXEL, 1, &samples, TIFF_IFD_0),
1182 env, TAG_SAMPLESPERPIXEL, writer);
1188 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_PLANARCONFIGURATION, 1, &config,
1189 TIFF_IFD_0), env, TAG_PLANARCONFIGURATION, writer);
1195 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_CFAREPEATPATTERNDIM, 2, repeatDim,
1196 TIFF_IFD_0), env, TAG_CFAREPEATPATTERNDIM, writer);
1203 BAIL_IF_EMPTY_RET_NULL_SP(entry, env, TAG_CFAPATTERN, writer);
1213 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_CFAPATTERN, cfaLength, cfa, TIFF_IFD_0),
1214 env, TAG_CFAPATTERN, writer);
1221 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_CFAPLANECOLOR, 3, cfaPlaneColor,
1222 TIFF_IFD_0), env, TAG_CFAPLANECOLOR, writer);
1228 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_CFALAYOUT, 1, &cfaLayout, TIFF_IFD_0),
1229 env, TAG_CFALAYOUT, writer);
1235 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_IMAGEDESCRIPTION, 1, &imageDescription,
1236 TIFF_IFD_0), env, TAG_IMAGEDESCRIPTION, writer);
1245 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_MAKE, count,
1247 writer);
1256 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_MODEL, count,
1258 writer);
1264 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_XRESOLUTION, 1, xres, TIFF_IFD_0),
1265 env, TAG_XRESOLUTION, writer);
1269 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_YRESOLUTION, 1, yres, TIFF_IFD_0),
1270 env, TAG_YRESOLUTION, writer);
1273 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_RESOLUTIONUNIT, 1, &unit, TIFF_IFD_0),
1274 env, TAG_RESOLUTIONUNIT, writer);
1281 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_SOFTWARE, count,
1283 writer);
1290 if (writer->addEntry(TAG_DATETIME, NativeContext::DATETIME_COUNT,
1298 if (writer->addEntry(TAG_DATETIMEORIGINAL, NativeContext::DATETIME_COUNT,
1309 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_TIFFEPSTANDARDID, 4, standardId,
1310 TIFF_IFD_0), env, TAG_TIFFEPSTANDARDID, writer);
1316 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_COPYRIGHT, 1, &copyright,
1317 TIFF_IFD_0), env, TAG_COPYRIGHT, writer);
1324 BAIL_IF_EMPTY_RET_NULL_SP(entry, env, TAG_EXPOSURETIME, writer);
1349 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_EXPOSURETIME, 1, exposure,
1350 TIFF_IFD_0), env, TAG_EXPOSURETIME, writer);
1358 BAIL_IF_EMPTY_RET_NULL_SP(entry, env, TAG_ISOSPEEDRATINGS, writer);
1373 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_ISOSPEEDRATINGS, 1, &iso,
1374 TIFF_IFD_0), env, TAG_ISOSPEEDRATINGS, writer);
1381 BAIL_IF_EMPTY_RET_NULL_SP(entry, env, TAG_BASELINEEXPOSURE, writer);
1390 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_BASELINEEXPOSURE, 1,
1391 baseExposureSRat, TIFF_IFD_0), env, TAG_BASELINEEXPOSURE, writer);
1398 BAIL_IF_EMPTY_RET_NULL_SP(entry, env, TAG_FOCALLENGTH, writer);
1401 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_FOCALLENGTH, 1, focalLength,
1402 TIFF_IFD_0), env, TAG_FOCALLENGTH, writer);
1409 BAIL_IF_EMPTY_RET_NULL_SP(entry, env, TAG_FNUMBER, writer);
1412 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_FNUMBER, 1, fnum,
1413 TIFF_IFD_0), env, TAG_FNUMBER, writer);
1419 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_DNGVERSION, 4, version, TIFF_IFD_0),
1420 env, TAG_DNGVERSION, writer);
1423 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_DNGBACKWARDVERSION, 4, backwardVersion,
1424 TIFF_IFD_0), env, TAG_DNGBACKWARDVERSION, writer);
1431 BAIL_IF_EMPTY_RET_NULL_SP(entry, env, TAG_WHITELEVEL, writer);
1433 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_WHITELEVEL, 1, &whiteLevel, TIFF_IFD_0),
1434 env, TAG_WHITELEVEL, writer);
1440 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_DEFAULTSCALE, 2, defaultScale,
1441 TIFF_IFD_0), env, TAG_DEFAULTSCALE, writer);
1449 BAIL_IF_EMPTY_RET_NULL_SP(entry1, env, TAG_CALIBRATIONILLUMINANT1, writer);
1457 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_CALIBRATIONILLUMINANT1, 1, &ref1,
1458 TIFF_IFD_0), env, TAG_CALIBRATIONILLUMINANT1, writer);
1462 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_CALIBRATIONILLUMINANT2, 1, &ref2,
1463 TIFF_IFD_0), env, TAG_CALIBRATIONILLUMINANT2, writer);
1471 BAIL_IF_EMPTY_RET_NULL_SP(entry1, env, TAG_COLORMATRIX1, writer);
1481 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_COLORMATRIX1, entry1.count,
1482 colorTransform1, TIFF_IFD_0), env, TAG_COLORMATRIX1, writer);
1486 BAIL_IF_EMPTY_RET_NULL_SP(entry2, env, TAG_COLORMATRIX2, writer);
1495 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_COLORMATRIX2, entry2.count,
1496 colorTransform2, TIFF_IFD_0), env, TAG_COLORMATRIX2, writer);
1504 BAIL_IF_EMPTY_RET_NULL_SP(entry1, env, TAG_CAMERACALIBRATION1, writer);
1514 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_CAMERACALIBRATION1, entry1.count,
1515 calibrationTransform1, TIFF_IFD_0), env, TAG_CAMERACALIBRATION1, writer);
1520 BAIL_IF_EMPTY_RET_NULL_SP(entry2, env, TAG_CAMERACALIBRATION2, writer);
1529 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_CAMERACALIBRATION2, entry2.count,
1530 calibrationTransform2, TIFF_IFD_0), env, TAG_CAMERACALIBRATION2, writer);
1538 BAIL_IF_EMPTY_RET_NULL_SP(entry1, env, TAG_FORWARDMATRIX1, writer);
1548 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_FORWARDMATRIX1, entry1.count,
1549 forwardTransform1, TIFF_IFD_0), env, TAG_FORWARDMATRIX1, writer);
1554 BAIL_IF_EMPTY_RET_NULL_SP(entry2, env, TAG_FORWARDMATRIX2, writer);
1563 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_FORWARDMATRIX2, entry2.count,
1564 forwardTransform2, TIFF_IFD_0), env, TAG_FORWARDMATRIX2, writer);
1572 BAIL_IF_EMPTY_RET_NULL_SP(entry, env, TAG_ASSHOTNEUTRAL, writer);
1583 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_ASSHOTNEUTRAL, entry.count, cameraNeutral,
1584 TIFF_IFD_0), env, TAG_ASSHOTNEUTRAL, writer);
1590 if (calculateAndSetCrop(env, characteristics, writer) != OK) {
1595 BAIL_IF_EMPTY_RET_NULL_SP(entry, env, TAG_ACTIVEAREA, writer);
1609 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_ACTIVEAREA, 4, activeArea, TIFF_IFD_0),
1610 env, TAG_ACTIVEAREA, writer);
1625 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_UNIQUECAMERAMODEL, cameraModel.size() + 1,
1627 TAG_UNIQUECAMERAMODEL, writer);
1656 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_NOISEPROFILE,
1658 writer);
1691 BAIL_IF_EMPTY_RET_NULL_SP(entry, env, TAG_IMAGEWIDTH, writer);
1756 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_OPCODELIST2, listSize, opcodeListBuf,
1757 TIFF_IFD_0), env, TAG_OPCODELIST2, writer);
1853 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_OPCODELIST3, listSize, opcodeListBuf,
1854 TIFF_IFD_0), env, TAG_OPCODELIST3, writer);
1869 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_ORIENTATION, 1, &orientation, TIFF_IFD_0),
1870 env, TAG_ORIENTATION, writer);
1878 if (writer->addEntry(TAG_IMAGEDESCRIPTION, len,
1888 if (!writer->hasIfd(TIFF_IFD_GPSINFO)) {
1889 if (writer->addSubIfd(TIFF_IFD_0, TIFF_IFD_GPSINFO, TiffWriter::GPSINFO) != OK) {
1899 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_GPSVERSIONID, 4, version,
1900 TIFF_IFD_GPSINFO), env, TAG_GPSVERSIONID, writer);
1904 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_GPSLATITUDEREF,
1906 TAG_GPSLATITUDEREF, writer);
1910 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_GPSLONGITUDEREF,
1912 TAG_GPSLONGITUDEREF, writer);
1916 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_GPSLATITUDE, 3, gpsData.mLatitude,
1917 TIFF_IFD_GPSINFO), env, TAG_GPSLATITUDE, writer);
1921 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_GPSLONGITUDE, 3, gpsData.mLongitude,
1922 TIFF_IFD_GPSINFO), env, TAG_GPSLONGITUDE, writer);
1926 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_GPSTIMESTAMP, 3, gpsData.mTimestamp,
1927 TIFF_IFD_GPSINFO), env, TAG_GPSTIMESTAMP, writer);
1931 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_GPSDATESTAMP,
1933 TAG_GPSDATESTAMP, writer);
1939 if (!writer->hasIfd(TIFF_IFD_SUB1)) {
1940 if (writer->addSubIfd(TIFF_IFD_0, TIFF_IFD_SUB1) != OK) {
1974 if (moveEntries(writer, TIFF_IFD_0, TIFF_IFD_SUB1, tagsToMove) != OK) {
1984 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_PHOTOMETRICINTERPRETATION, 1,
1985 &interpretation, TIFF_IFD_0), env, TAG_PHOTOMETRICINTERPRETATION, writer);
1991 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_PLANARCONFIGURATION, 1, &config,
1992 TIFF_IFD_0), env, TAG_PLANARCONFIGURATION, writer);
1998 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_SAMPLESPERPIXEL, 1, &samples,
1999 TIFF_IFD_0), env, TAG_SAMPLESPERPIXEL, writer);
2007 writer->addEntry(TAG_BITSPERSAMPLE, SAMPLES_PER_RGB_PIXEL, bits, TIFF_IFD_0),
2008 env, TAG_BITSPERSAMPLE, writer);
2014 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_NEWSUBFILETYPE, 1, &subfileType,
2015 TIFF_IFD_0), env, TAG_NEWSUBFILETYPE, writer);
2021 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_COMPRESSION, 1, &compression,
2022 TIFF_IFD_0), env, TAG_COMPRESSION, writer);
2029 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_IMAGEWIDTH, 1, &uWidth, TIFF_IFD_0),
2030 env, TAG_IMAGEWIDTH, writer);
2031 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_IMAGELENGTH, 1, &uHeight, TIFF_IFD_0),
2032 env, TAG_IMAGELENGTH, writer);
2038 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_XRESOLUTION, 1, xres, TIFF_IFD_0),
2039 env, TAG_XRESOLUTION, writer);
2043 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_YRESOLUTION, 1, yres, TIFF_IFD_0),
2044 env, TAG_YRESOLUTION, writer);
2047 BAIL_IF_INVALID_RET_NULL_SP(writer->addEntry(TAG_RESOLUTIONUNIT, 1, &unit, TIFF_IFD_0),
2048 env, TAG_RESOLUTIONUNIT, writer);
2052 if (writer->addStrip(TIFF_IFD_0) != OK) {
2059 if (writer->hasIfd(TIFF_IFD_SUB1)) {
2060 if (writer->addStrip(TIFF_IFD_SUB1) != OK) {
2067 return writer;
2218 sp<TiffWriter> writer = DngCreator_setup(env, thiz, uWidth, uHeight);
2220 if (writer.get() == nullptr) {
2225 if (!validateDngHeader(env, writer, *(context->getCharacteristics()), width, height)) {
2234 bool hasThumbnail = writer->hasIfd(TIFF_IFD_SUB1);
2271 if ((ret = writer->write(out.get(), sources.editArray(), sources.size())) != OK) {
2288 if ((ret = writer->write(out.get(), sources.editArray(), sources.size())) != OK) {
2326 sp<TiffWriter> writer = DngCreator_setup(env, thiz, uWidth, uHeight);
2328 if (writer.get() == nullptr) {
2333 if (!validateDngHeader(env, writer, *(context->getCharacteristics()), width, height)) {
2339 bool hasThumbnail = writer->hasIfd(TIFF_IFD_SUB1);
2362 if ((ret = writer->write(out.get(), sources.editArray(), sources.size())) != OK) {