Ansel 0.0
A darktable fork - bloat + design vision
Loading...
Searching...
No Matches
amaze.cc File Reference
#include "develop/imageop.h"
#include "develop/imageop_math.h"
#include <algorithm>
#include <cmath>
#include <cstdint>
#include <cstdlib>
#include <cstring>
+ Include dependency graph for amaze.cc:

Macros

#define __STDC_FORMAT_MACROS
 
#define AMAZETS   160
 

Functions

void amaze_demosaic_RT (const dt_dev_pixelpipe_iop_t *piece, const float *const in, float *out, const dt_iop_roi_t *const roi_in, const dt_iop_roi_t *const roi_out, const int filters)
 
static __inline float clampnan (const float x, const float m, const float M)
 
static __inline float xmul2f (float d)
 
static __inline float xdiv2f (float d)
 
static __inline float xdivf (float d, int n)
 
template<typename _Tp >
static const _Tp SQR (_Tp x)
 
template<typename _Tp >
static const _Tp intp (const _Tp a, const _Tp b, const _Tp c)
 
template<typename _Tp >
static const _Tp LIM (const _Tp a, const _Tp b, const _Tp c)
 
template<typename _Tp >
static const _Tp ULIM (const _Tp a, const _Tp b, const _Tp c)
 

Macro Definition Documentation

◆ __STDC_FORMAT_MACROS

#define __STDC_FORMAT_MACROS

◆ AMAZETS

#define AMAZETS   160

Function Documentation

◆ amaze_demosaic_RT()

void amaze_demosaic_RT ( const dt_dev_pixelpipe_iop_t piece,
const float *const  in,
float *  out,
const dt_iop_roi_t *const  roi_in,
const dt_iop_roi_t *const  roi_out,
const int  filters 
)
Todo:
(darktable): we have the pixel colors interleaved so writing them in blocks using SSE2 is

References AMAZETS, c, clampnan(), dt_dev_pixelpipe_iop_t::dsc_in, dt_free, eps, epssq, FC(), h, height, dt_iop_roi_t::height, i, intp(), MIN, out, dt_iop_buffer_dsc_t::processed_maximum, row, SQR, top, ULIM(), v, width, dt_iop_roi_t::width, dt_iop_roi_t::x, xdiv2f(), xdivf(), xmul2f(), and dt_iop_roi_t::y.

◆ clampnan()

static __inline float clampnan ( const float  x,
const float  m,
const float  M 
)
static

References M, m, r, and x.

Referenced by amaze_demosaic_RT().

◆ intp()

template<typename _Tp >
static const _Tp intp ( const _Tp  a,
const _Tp  b,
const _Tp  c 
)
inlinestatic

References a, b, and c.

Referenced by amaze_demosaic_RT().

◆ LIM()

template<typename _Tp >
static const _Tp LIM ( const _Tp  a,
const _Tp  b,
const _Tp  c 
)
inlinestatic

References a, b, and c.

Referenced by ULIM().

◆ SQR()

template<typename _Tp >
static const _Tp SQR ( _Tp  x)
inlinestatic

References x.

◆ ULIM()

template<typename _Tp >
static const _Tp ULIM ( const _Tp  a,
const _Tp  b,
const _Tp  c 
)
inlinestatic

References a, b, c, and LIM().

Referenced by amaze_demosaic_RT().

◆ xdiv2f()

static __inline float xdiv2f ( float  d)
static

References d, f, and x.

Referenced by amaze_demosaic_RT().

◆ xdivf()

static __inline float xdivf ( float  d,
int  n 
)
static

References d, f, n, and x.

Referenced by amaze_demosaic_RT().

◆ xmul2f()

static __inline float xmul2f ( float  d)
static

References d, f, and x.

Referenced by amaze_demosaic_RT().