merge with dev

This commit is contained in:
Desmis 2019-12-20 16:41:32 +01:00
commit 7c79cc7184
8 changed files with 13 additions and 9 deletions

View File

@ -195,7 +195,7 @@ CJSON_PUBLIC(cJSON *) cJSON_CreateObject(void);
/* Create a string where valuestring references a string so /* Create a string where valuestring references a string so
* it will not be freed by cJSON_Delete */ * it will not be freed by cJSON_Delete */
CJSON_PUBLIC(cJSON *) cJSON_CreateStringReference(const char *string); CJSON_PUBLIC(cJSON *) cJSON_CreateStringReference(const char *string);
/* Create an object/arrray that only references it's elements so /* Create an object/array that only references it's elements so
* they will not be freed by cJSON_Delete */ * they will not be freed by cJSON_Delete */
CJSON_PUBLIC(cJSON *) cJSON_CreateObjectReference(const cJSON *child); CJSON_PUBLIC(cJSON *) cJSON_CreateObjectReference(const cJSON *child);
CJSON_PUBLIC(cJSON *) cJSON_CreateArrayReference(const cJSON *child); CJSON_PUBLIC(cJSON *) cJSON_CreateArrayReference(const cJSON *child);

View File

@ -253,7 +253,7 @@ CameraConst::parseEntry(void *cJSON_, const char *make_model)
} }
if (i % 4 != 0) { if (i % 4 != 0) {
fprintf(stderr, "\"masked_areas\" array length must be divisable by 4\n"); fprintf(stderr, "\"masked_areas\" array length must be divisible by 4\n");
goto parse_error; goto parse_error;
} }
} }

View File

@ -1382,7 +1382,7 @@ public:
* @param HH hue before [-PI ; +PI] * @param HH hue before [-PI ; +PI]
* @param Chprov1 chroma after [0 ; 180 (can be superior)] * @param Chprov1 chroma after [0 ; 180 (can be superior)]
* @param CC chroma before [0 ; 180] * @param CC chroma before [0 ; 180]
* @param corectionHuechroma hue correction depending on chromaticity (saturation), in radians [0 ; 0.45] (return value) * @param correctionHueChroma hue correction depending on chromaticity (saturation), in radians [0 ; 0.45] (return value)
* @param correctlum hue correction depending on luminance (brightness, contrast,...), in radians [0 ; 0.45] (return value) * @param correctlum hue correction depending on luminance (brightness, contrast,...), in radians [0 ; 0.45] (return value)
* @param munsDbgInfo (Debug target only) object to collect information * @param munsDbgInfo (Debug target only) object to collect information
*/ */

View File

@ -4433,6 +4433,10 @@ void CLASS foveon_interpolate()
void CLASS crop_masked_pixels() void CLASS crop_masked_pixels()
{ {
if (data_error) {
return;
}
int row, col; int row, col;
unsigned r, c, m, mblack[8], zero, val; unsigned r, c, m, mblack[8], zero, val;

View File

@ -5725,7 +5725,7 @@ void ImProcFunctions::getAutoExp(const LUTu &histogram, int histcompr, double cl
whiteclipg = CurveFactory::igamma2((float)(whiteclipg / 65535.0)) * 65535.0; //need to inverse gamma transform to get correct exposure compensation parameter whiteclipg = CurveFactory::igamma2((float)(whiteclipg / 65535.0)) * 65535.0; //need to inverse gamma transform to get correct exposure compensation parameter
//corection with gamma //correction with gamma
black = (int)((65535 * black) / whiteclipg); black = (int)((65535 * black) / whiteclipg);
//expcomp = log(65535.0 / (whiteclipg)) / log(2.0); //expcomp = log(65535.0 / (whiteclipg)) / log(2.0);

View File

@ -1492,9 +1492,9 @@ void CropWindow::expose (Cairo::RefPtr<Cairo::Context> cr)
const float kernel_size2 = SQR(2.f * blur_radius2 + 1.f); // count of pixels in the small blur kernel const float kernel_size2 = SQR(2.f * blur_radius2 + 1.f); // count of pixels in the small blur kernel
const float rkernel_size2 = 1.0f / kernel_size2; // reciprocal of kernel_size to avoid divisions const float rkernel_size2 = 1.0f / kernel_size2; // reciprocal of kernel_size to avoid divisions
// aloocate buffer for precalculated Luminance // allocate buffer for precalculated Luminance
float* tmpL = (float*)malloc(bHeight * bWidth * sizeof(float) ); float* tmpL = (float*)malloc(bHeight * bWidth * sizeof(float) );
// aloocate buffers for sums and sums of squares of small kernel // allocate buffers for sums and sums of squares of small kernel
float* tmpLsum = (float*)malloc((bHeight) * (bWidth) * sizeof(float) ); float* tmpLsum = (float*)malloc((bHeight) * (bWidth) * sizeof(float) );
float* tmpLsumSq = (float*)malloc((bHeight) * (bWidth) * sizeof(float) ); float* tmpLsumSq = (float*)malloc((bHeight) * (bWidth) * sizeof(float) );
float* tmpstdDev2 = (float*)malloc((bHeight) * (bWidth) * sizeof(float) ); float* tmpstdDev2 = (float*)malloc((bHeight) * (bWidth) * sizeof(float) );
@ -1631,7 +1631,7 @@ void CropWindow::expose (Cairo::RefPtr<Cairo::Context> cr)
&& stdDev_L2 > stdDev_L //this is the key to select fine detail within lower contrast on larger scale && stdDev_L2 > stdDev_L //this is the key to select fine detail within lower contrast on larger scale
&& stdDev_L > focus_threshby10 //options.highlightThreshold && stdDev_L > focus_threshby10 //options.highlightThreshold
) { ) {
// transpareny depends on sdtDev_L2 and maxstdDev_L2 // transparency depends on sdtDev_L2 and maxstdDev_L2
float transparency = 1.f - std::min(stdDev_L2 / maxstdDev_L2, 1.0f) ; float transparency = 1.f - std::min(stdDev_L2 / maxstdDev_L2, 1.0f) ;
// first row of circle // first row of circle
guint8* currtmp = &curr[0] + (-3 * pixRowStride); guint8* currtmp = &curr[0] + (-3 * pixRowStride);

View File

@ -55,7 +55,7 @@ class RTSurface;
* - drag1 * - drag1
* - button1Released * - button1Released
* *
* Actually, only curves does use this class, and everything is handled for curve implementor (as much as possible). * Actually, only curves does use this class, and everything is handled for curve implementer (as much as possible).
* See the curve's class documentation to see how to implement the curve's pipette feature. * See the curve's class documentation to see how to implement the curve's pipette feature.
* *
* ### Event handling * ### Event handling

View File

@ -229,7 +229,7 @@ Glib::ustring Options::getPreferredProfilePath()
* *
*@param profName path + filename of the procparam to look for. A filename without path can be provided for backward compatibility. *@param profName path + filename of the procparam to look for. A filename without path can be provided for backward compatibility.
* In this case, this parameter will be updated with the new format. * In this case, this parameter will be updated with the new format.
*@return Send back the absolute path of the given filename or "Neutral" if "Neutral" has been set to profName. Implementor will have *@return Send back the absolute path of the given filename or "Neutral" if "Neutral" has been set to profName. Implementer will have
* to test for this particular value. If the absolute path is invalid (e.g. the file doesn't exist), it will return an empty string. * to test for this particular value. If the absolute path is invalid (e.g. the file doesn't exist), it will return an empty string.
*/ */
Glib::ustring Options::findProfilePath(Glib::ustring &profName) Glib::ustring Options::findProfilePath(Glib::ustring &profName)