Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Multimedia
Kdenlive
Commits
bd94ca90
Commit
bd94ca90
authored
Mar 20, 2021
by
Eugen Mohr
Committed by
Julius Künzel
Mar 20, 2021
Browse files
Some additional doxygen fixes
parent
c8d05f8d
Pipeline
#54960
passed with stage
in 10 minutes and 20 seconds
Changes
24
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
src/assets/view/widgets/keyframewidget.hpp
View file @
bd94ca90
...
...
@@ -72,7 +72,7 @@ public slots:
void
slotSetPosition
(
int
pos
=
-
1
,
bool
update
=
true
);
private
slots
:
/*
brief Update the value of the widgets to reflect keyframe change */
/*
* @
brief Update the value of the widgets to reflect keyframe change */
void
slotRefreshParams
();
void
slotAtKeyframe
(
bool
atKeyframe
,
bool
singleKeyframe
);
void
monitorSeek
(
int
pos
);
...
...
src/colortools.h
View file @
bd94ca90
...
...
@@ -30,30 +30,30 @@ public:
enum
ComponentsHSV
{
COM_H
,
COM_S
,
COM_V
};
/**
@brief Draws a UV plane with given Y value.
scaling defines how far to zoom in (or out). Lower value = zoom in.
The modified version always scales the RGB values so that at least one of them attains 255.
If not the full rect should be filled, set circleOnly to true.
See also: https://en.wikipedia.org/wiki/YUV and https://de.wikipedia.org/wiki/Vektorskop
*
@brief Draws a UV plane with given Y value.
*
scaling defines how far to zoom in (or out). Lower value = zoom in.
*
The modified version always scales the RGB values so that at least one of them attains 255.
*
If not the full rect should be filled, set circleOnly to true.
*
See also: https://en.wikipedia.org/wiki/YUV and https://de.wikipedia.org/wiki/Vektorskop
*/
QImage
yuvColorWheel
(
const
QSize
&
size
,
int
Y
,
float
scaling
,
bool
modifiedVersion
,
bool
circleOnly
);
/**
@brief Draws a UV plane with given UV angle (ratio u:v stays constant)
scaling defines how far to zoom in (or out). Lower value = zoom in.
angle defines the angle in a default U/V plane. A vertical plane, on which Y goes from 0 to 1,
is then laid through the UV plane, with the defined angle.
@see yuvColorWheel()
*
@brief Draws a UV plane with given UV angle (ratio u:v stays constant)
*
scaling defines how far to zoom in (or out). Lower value = zoom in.
*
angle defines the angle in a default U/V plane. A vertical plane, on which Y goes from 0 to 1,
*
is then laid through the UV plane, with the defined angle.
*
@see yuvColorWheel()
*/
QImage
yuvVerticalPlane
(
const
QSize
&
size
,
int
angle
,
float
scaling
);
/**
@brief Draws a RGB plane with two values on one axis and one on the other.
This is e.g. useful as background for a curves dialog. On the line from bottom left to top right
are neutral colors. The colors on the y axis show what the neutral color will look like when modifying the curve.
color defines the color to modify on the y axis. The other two components will be increased
in equal terms (linear as well) on the x axis.
scaling \in ]0,1] defines the maximum variance of the selected component; Choosing a value lower than 1
simulates the case that the curves can adjust only +- scaling*255. This mainly delivers a more constant look
when also using the Luma component for the curves display but might not represent the actual color change!
*
@brief Draws a RGB plane with two values on one axis and one on the other.
*
This is e.g. useful as background for a curves dialog. On the line from bottom left to top right
*
are neutral colors. The colors on the y axis show what the neutral color will look like when modifying the curve.
*
color defines the color to modify on the y axis. The other two components will be increased
*
in equal terms (linear as well) on the x axis.
*
scaling \in ]0,1] defines the maximum variance of the selected component; Choosing a value lower than 1
*
simulates the case that the curves can adjust only +- scaling*255. This mainly delivers a more constant look
*
when also using the Luma component for the curves display but might not represent the actual color change!
*/
static
QImage
rgbCurvePlane
(
const
QSize
&
size
,
const
ColorTools
::
ColorsRGB
&
color
,
float
scaling
=
1
,
const
QRgb
&
background
=
QRgb
());
...
...
@@ -62,18 +62,18 @@ public:
*/
static
QImage
rgbCurveLine
(
const
QSize
&
size
,
const
ColorTools
::
ColorsRGB
&
color
,
const
QRgb
&
background
);
/**
@brief Draws a YPbPr plane with Pb on the x axis and Pr on the y axis.
Y is the Y value to use.
scaling defines how far to zoom in (or out). Lower value = zoom in.
See also: https://de.wikipedia.org/wiki/YPbPr-Farbmodell and https://www.poynton.com/ColorFAQ.html
*
@brief Draws a YPbPr plane with Pb on the x axis and Pr on the y axis.
*
Y is the Y value to use.
*
scaling defines how far to zoom in (or out). Lower value = zoom in.
*
See also: https://de.wikipedia.org/wiki/YPbPr-Farbmodell and https://www.poynton.com/ColorFAQ.html
*/
QImage
yPbPrColorWheel
(
const
QSize
&
size
,
int
Y
,
float
scaling
,
bool
circleOnly
);
/**
@brief Draws a HSV plane with Hue on the x axis and hue difference on the y axis.
This is for the Bézier Curves widget which allows one to change the hue (y) of a certain hue.
MIN/MAX give the minimum/maximum hue difference, e.g. -128,+128.
For the value ranges see:
https://doc.qt.io/qt-5/qcolor.html#the-hsv-color-model
*
@brief Draws a HSV plane with Hue on the x axis and hue difference on the y axis.
*
This is for the Bézier Curves widget which allows one to change the hue (y) of a certain hue.
*
MIN/MAX give the minimum/maximum hue difference, e.g. -128,+128.
*
For the value ranges see:
*
https://doc.qt.io/qt-5/qcolor.html#the-hsv-color-model
*/
static
QImage
hsvHueShiftPlane
(
const
QSize
&
size
,
int
S
,
int
V
,
int
MIN
,
int
MAX
);
...
...
src/doc/kdenlivedoc.h
View file @
bd94ca90
...
...
@@ -17,10 +17,10 @@
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA *
***************************************************************************/
/*
! \
class KdenliveDoc
\
brief Represents a kdenlive project file
Instances of KdenliveDoc classes are created by void MainWindow::newFile(bool showProjectSettings, bool force)
/*
* @
class KdenliveDoc
*
@
brief Represents a kdenlive project file
*
*
Instances of KdenliveDoc classes are created by void MainWindow::newFile(bool showProjectSettings, bool force)
*/
#ifndef KDENLIVEDOC_H
#define KDENLIVEDOC_H
...
...
src/jobs/filterclipjob.h
View file @
bd94ca90
...
...
@@ -40,13 +40,13 @@ public:
bool
commitResult
(
Fun
&
undo
,
Fun
&
redo
)
override
;
protected:
/
/
@brief create and configure consumer
/
**
@brief create and configure consumer
*/
void
configureConsumer
()
override
;
/
/
@brief create and configure producer
/
**
@brief create and configure producer
*/
void
configureProducer
()
override
;
/
/
@brief create and configure filter
/
**
@brief create and configure filter
*/
void
configureFilter
()
override
;
protected:
...
...
src/jobs/jobmanager.h
View file @
bd94ca90
...
...
@@ -70,12 +70,12 @@ public:
~
JobManager
()
override
;
/** @brief Start a job
This function calls the prepareJob function of the job if it provides one.
@param T is the type of job (must inherit from AbstractClipJob)
@param binIds is the list of clips to which we apply the job
@param parents is the list of the ids of the job that must terminate before this one can start
@param args are the arguments to construct the job
@param return the id of the created job
*
This function calls the prepareJob function of the job if it provides one.
*
@param T is the type of job (must inherit from AbstractClipJob)
*
@param binIds is the list of clips to which we apply the job
*
@param parents is the list of the ids of the job that must terminate before this one can start
*
@param args are the arguments to construct the job
*
@param return the id of the created job
*/
template
<
typename
T
,
typename
...
Args
>
int
startJob
(
const
std
::
vector
<
QString
>
&
binIds
,
int
parentId
,
QString
undoString
,
Args
&&
...
args
);
// Same function, but we specify the function used to create a new job
...
...
src/jobs/meltjob.h
View file @
bd94ca90
...
...
@@ -46,9 +46,9 @@ class MeltJob : public AbstractClipJob
public:
/** @brief Creates a melt job for the given bin clip
consumerName is the melt name of the consumer that we use
if useProducerProfile == true, the profile used will be the one of the producer
in and out represent the portion of the clip we deal with. Leave to -1 for default (whole clip)
*
consumerName is the melt name of the consumer that we use
*
if useProducerProfile == true, the profile used will be the one of the producer
*
in and out represent the portion of the clip we deal with. Leave to -1 for default (whole clip)
*/
MeltJob
(
const
QString
&
binId
,
const
ObjectId
&
owner
,
JOBTYPE
type
,
bool
useProducerProfile
=
false
,
int
in
=
-
1
,
int
out
=
-
1
);
bool
startJob
()
override
;
...
...
@@ -56,16 +56,16 @@ public:
int
length
;
protected:
/
/
@brief extra configuration of the profile (eg: resize the profile)
/
**
@brief extra configuration of the profile (eg: resize the profile)
*/
virtual
void
configureProfile
()
{}
/
/
@brief extra configuration of the producer
/
**
@brief extra configuration of the producer
*/
virtual
void
configureProducer
()
{}
/
/
@brief create and configure consumer
/
**
@brief create and configure consumer
*/
virtual
void
configureConsumer
()
=
0
;
/
/
@brief create and configure filter
/
**
@brief create and configure filter
*/
virtual
void
configureFilter
()
=
0
;
protected:
...
...
src/jobs/scenesplitjob.hpp
View file @
bd94ca90
...
...
@@ -40,8 +40,8 @@ class SceneSplitJob : public MeltJob
public:
/** @brief Creates a scenesplit job for the given bin clip
@param subClips if true, we create a subclip per found scene
@param markersType The type of markers that will be created to denote scene. Leave -1 for no markers
*
@param subClips if true, we create a subclip per found scene
*
@param markersType The type of markers that will be created to denote scene. Leave -1 for no markers
*/
SceneSplitJob
(
const
QString
&
binId
,
bool
subClips
,
int
markersType
=
-
1
,
int
minInterval
=
0
);
...
...
@@ -54,17 +54,17 @@ public:
const
QString
getDescription
()
const
override
;
protected:
/
/
@brief create and configure consumer
/
**
@brief create and configure consumer
*/
void
configureConsumer
()
override
;
/
/
@brief create and configure filter
/
**
@brief create and configure filter
*/
void
configureFilter
()
override
;
/
/
@brief extra configuration of the profile (eg: resize the profile)
/
**
@brief extra configuration of the profile (eg: resize the profile)
*/
void
configureProfile
()
override
;
bool
m_subClips
;
int
m_markersType
;
/
/
@brief minimum scene duration.
/
**
@brief minimum scene duration.
*/
int
m_minInterval
;
};
src/jobs/speedjob.hpp
View file @
bd94ca90
...
...
@@ -40,7 +40,7 @@ class SpeedJob : public MeltJob
public:
/** @brief Creates a timewarp producer
@param speed The speed value
*
@param speed The speed value
*/
SpeedJob
(
const
QString
&
binId
,
double
speed
,
bool
warp_pitch
,
QString
destUrl
);
...
...
@@ -53,13 +53,13 @@ public:
const
QString
getDescription
()
const
override
;
protected:
/
/
@brief create and configure consumer
/
**
@brief create and configure consumer
*/
void
configureConsumer
()
override
;
/
/
@brief create and configure producer
/
**
@brief create and configure producer
*/
void
configureProducer
()
override
;
/
/
@brief create and configure filter
/
**
@brief create and configure filter
*/
void
configureFilter
()
override
;
double
m_speed
;
...
...
src/jobs/stabilizejob.hpp
View file @
bd94ca90
...
...
@@ -40,9 +40,9 @@ class StabilizeJob : public MeltJob
public:
/** @brief Creates a stabilize job job for the given bin clip
@brief filterName is the name of the actual melt filter to use
@brief destUrl is the path to the file we are going to produce
@brief filterParams is a map containing the xml parameters of the filter
*
@brief filterName is the name of the actual melt filter to use
*
@brief destUrl is the path to the file we are going to produce
*
@brief filterParams is a map containing the xml parameters of the filter
*/
StabilizeJob
(
const
QString
&
binId
,
const
QString
&
filterName
,
QString
destUrl
,
std
::
unordered_map
<
QString
,
QString
>
filterparams
);
...
...
@@ -59,10 +59,10 @@ public:
const
QString
getDescription
()
const
override
;
protected:
/
/
@brief create and configure consumer
/
**
@brief create and configure consumer
*/
void
configureConsumer
()
override
;
/
/
@brief create and configure filter
/
**
@brief create and configure filter
*/
void
configureFilter
()
override
;
protected:
...
...
src/jobs/thumbjob.hpp
View file @
bd94ca90
...
...
@@ -41,8 +41,8 @@ class ThumbJob : public AbstractClipJob
public:
/** @brief Extract a thumb for given clip.
@param frameNumber is the frame to extract. Leave to -1 for default
@param persistent: if true, we will use the persistent cache (for query and saving)
*
@param frameNumber is the frame to extract. Leave to -1 for default
*
@param persistent: if true, we will use the persistent cache (for query and saving)
*/
ThumbJob
(
const
QString
&
binId
,
int
frameNumber
=
-
1
,
bool
persistent
=
false
,
bool
reloadAllThumbs
=
false
);
...
...
@@ -51,7 +51,7 @@ public:
bool
startJob
()
override
;
/** @brief This is to be called after the job finished.
By design, the job should store the result of the computation but not share it with the rest of the code. This happens when we call commitResult */
*
By design, the job should store the result of the computation but not share it with the rest of the code. This happens when we call commitResult */
bool
commitResult
(
Fun
&
undo
,
Fun
&
redo
)
override
;
private:
...
...
src/jobs/transcodeclipjob.h
View file @
bd94ca90
...
...
@@ -34,7 +34,7 @@ public:
const
QString
getDescription
()
const
override
;
bool
startJob
()
override
;
/** @brief This is to be called after the job finished.
By design, the job should store the result of the computation but not share it with the rest of the code. This happens when we call commitResult */
*
By design, the job should store the result of the computation but not share it with the rest of the code. This happens when we call commitResult */
bool
commitResult
(
Fun
&
undo
,
Fun
&
redo
)
override
;
private
slots
:
...
...
src/logger.hpp
View file @
bd94ca90
...
...
@@ -42,7 +42,7 @@
class
Logger
{
public:
/
//
@brief Inits the logger. Must be called at startup
/
**
@brief Inits the logger. Must be called at startup
*/
static
void
init
();
/** @brief Notify the logger that the current thread wants to start logging.
...
...
@@ -66,11 +66,11 @@ public:
// log whenever an undo/redo occurred
static
void
log_undo
(
bool
undo
);
/
//
@brief Notify that we are done with our function. Must not be called if start_logging returned false.
/
**
@brief Notify that we are done with our function. Must not be called if start_logging returned false.
*/
static
void
stop_logging
();
static
void
print_trace
();
/
//
@brief Resets the current log
/
**
@brief Resets the current log
*/
static
void
clear
();
static
std
::
unordered_map
<
std
::
string
,
std
::
string
>
translation_table
;
...
...
@@ -117,7 +117,7 @@ class LogGuard
public:
LogGuard
();
~
LogGuard
();
/
/
@brief Returns true if we are the top-level caller.
/
**
@brief Returns true if we are the top-level caller.
*/
bool
hasGuard
()
const
;
protected:
...
...
src/macros.hpp
View file @
bd94ca90
...
...
@@ -61,8 +61,8 @@ reading a Read-protected property. In that case, we try to write lock it first (
}
/** @brief This macro takes some lambdas that represent undo/redo for an operation and the text (name) associated with this operation
The lambdas are transformed to make sure they lock access to the class they operate on.
Then they are added on the undoStack
*
The lambdas are transformed to make sure they lock access to the class they operate on.
*
Then they are added on the undoStack
*/
#define PUSH_UNDO(undo, redo, text) \
if (auto ptr = m_undoStack.lock()) { \
...
...
@@ -73,8 +73,8 @@ reading a Read-protected property. In that case, we try to write lock it first (
}
/** @brief This macro takes as parameter one atomic operation and its reverse, and update
the undo and redo functional stacks/queue accordingly
This should be used in the rare case where we don't need a lock mutex. In general, prefer the other version
*
the undo and redo functional stacks/queue accordingly
*
This should be used in the rare case where we don't need a lock mutex. In general, prefer the other version
*/
#define UPDATE_UNDO_REDO_NOLOCK(operation, reverse, undo, redo) \
undo = [reverse, undo]() { \
...
...
@@ -86,8 +86,8 @@ reading a Read-protected property. In that case, we try to write lock it first (
return operation() && v; \
};
/** @brief This macro takes as parameter one atomic operation and its reverse, and update
the undo and redo functional stacks/queue accordingly
It will also ensure that operation and reverse are dealing with mutexes
*
the undo and redo functional stacks/queue accordingly
*
It will also ensure that operation and reverse are dealing with mutexes
*/
#define UPDATE_UNDO_REDO(operation, reverse, undo, redo) \
LOCK_IN_LAMBDA(operation) \
...
...
src/scopes/audioscopes/abstractaudioscopewidget.h
View file @
bd94ca90
...
...
@@ -21,7 +21,7 @@
class
Render
;
/**
\
brief Abstract class for scopes analyzing audio samples.
* @
brief Abstract class for scopes analyzing audio samples.
*/
class
AbstractAudioScopeWidget
:
public
AbstractScopeWidget
{
...
...
src/scopes/audioscopes/audiospectrum.h
View file @
bd94ca90
...
...
@@ -28,11 +28,11 @@
class
AudioSpectrum_UI
;
/**
\
brief Displays a spectral power distribution of audio samples.
The frequency distribution is calculated by means of a Fast Fourier Transformation.
For more information see Wikipedia:FFT and the code comments.
\
todo Currently only supports one channel. Add support for multiple channels.
*
@
brief Displays a spectral power distribution of audio samples.
*
The frequency distribution is calculated by means of a Fast Fourier Transformation.
*
For more information see Wikipedia:FFT and the code comments.
*
*
@
todo Currently only supports one channel. Add support for multiple channels.
*/
class
AudioSpectrum
:
public
AbstractAudioScopeWidget
{
...
...
src/scopes/colorscopes/abstractgfxscopewidget.h
View file @
bd94ca90
...
...
@@ -17,7 +17,7 @@
#include "../abstractscopewidget.h"
/**
\
brief Abstract class for scopes analyzing image frames.
* @
brief Abstract class for scopes analyzing image frames.
*/
class
AbstractGfxScopeWidget
:
public
AbstractScopeWidget
{
...
...
@@ -31,8 +31,8 @@ protected:
///// Variables /////
/** @brief Scope renderer. Must emit signalScopeRenderingFinished()
when calculation has finished, to allow multi-threading.
accelerationFactor hints how much faster than usual the calculation should be accomplished, if possible. */
*
when calculation has finished, to allow multi-threading.
*
accelerationFactor hints how much faster than usual the calculation should be accomplished, if possible. */
virtual
QImage
renderGfxScope
(
uint
accelerationFactor
,
const
QImage
&
)
=
0
;
QImage
renderScope
(
uint
accelerationFactor
)
override
;
...
...
@@ -45,8 +45,8 @@ private:
public
slots
:
/** @brief Must be called when the active monitor has shown a new frame.
This slot must be connected in the implementing class, it is *not*
done in this abstract class. */
*
This slot must be connected in the implementing class, it is *not*
*
done in this abstract class. */
void
slotRenderZoneUpdated
(
const
QImage
&
);
protected
slots
:
...
...
src/scopes/colorscopes/histogram.h
View file @
bd94ca90
...
...
@@ -17,7 +17,7 @@
class
HistogramGenerator
;
/**
*
\
brief Displays the histogram of frames.
*
@
brief Displays the histogram of frames.
*/
class
Histogram
:
public
AbstractGfxScopeWidget
{
...
...
src/scopes/colorscopes/rgbparade.h
View file @
bd94ca90
...
...
@@ -19,7 +19,7 @@ class RGBParade_UI;
class
RGBParadeGenerator
;
/**
*
\
brief Displays the RGB waveform of a frame.
*
@
brief Displays the RGB waveform of a frame.
* This is the same as the Waveform, but for each colour channel separately.
*/
class
RGBParade
:
public
AbstractGfxScopeWidget
...
...
src/scopes/colorscopes/vectorscope.h
View file @
bd94ca90
...
...
@@ -22,9 +22,9 @@ class VectorscopeGenerator;
enum
BACKGROUND_MODE
{
BG_NONE
=
0
,
BG_YUV
=
1
,
BG_CHROMA
=
2
,
BG_YPbPr
=
3
};
/**
\
brief Displays the vectorscope of a frame.
\
see VectorscopeGenerator for more details about the vectorscope.
*
@
brief Displays the vectorscope of a frame.
*
*
@
see VectorscopeGenerator for more details about the vectorscope.
*/
class
Vectorscope
:
public
AbstractGfxScopeWidget
{
...
...
src/scopes/colorscopes/waveform.h
View file @
bd94ca90
...
...
@@ -19,9 +19,9 @@ class Waveform_UI;
class
WaveformGenerator
;
/**
\
brief Displays the waveform of a frame.
For further explanations of the waveform see the WaveformGenerator class.
* @
brief Displays the waveform of a frame.
*
*
For further explanations of the waveform see the WaveformGenerator class.
*/
class
Waveform
:
public
AbstractGfxScopeWidget
{
...
...
Prev
1
2
Next
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment