CaptureMoment
0.1.0
Free and open-source non-destructive photo editor
Loading...
Searching...
No Matches
exiv2_initializer.h
Go to the documentation of this file.
1
8
#pragma once
9
10
#include <mutex>
// for std::once_flag
11
12
namespace
CaptureMoment::Core
{
13
14
namespace
Serializer {
15
23
class
Exiv2Initializer
{
24
public
:
29
static
void
initialize
();
30
36
static
void
terminate
();
// Made public so it can be registered with atexit
37
38
private
:
42
static
std::once_flag m_init_flag;
43
};
44
45
}
// namespace Serializer
46
47
}
// namespace CaptureMoment::Core
CaptureMoment::Core::Serializer::Exiv2Initializer
Singleton-like class to handle Exiv2 XMP parser initialization and termination.
Definition
exiv2_initializer.h:23
CaptureMoment::Core::Serializer::Exiv2Initializer::initialize
static void initialize()
Initializes the Exiv2 XMP parser if not already done. This function is thread-safe.
Definition
exiv2_initializer.cpp:17
CaptureMoment::Core::Serializer::Exiv2Initializer::terminate
static void terminate()
Terminates the Exiv2 XMP parser. This function is registered to run at program termination via std::a...
Definition
exiv2_initializer.cpp:27
CaptureMoment::Core
Manages the lifecycle of a single IWorkingImage instance.
Definition
app_config.cpp:11
CaptureMoment — footer