Blender
V3.3
|
#include "session/merge.h"
#include "util/array.h"
#include "util/map.h"
#include "util/system.h"
#include "util/time.h"
#include "util/unique_ptr.h"
#include <OpenImageIO/filesystem.h>
#include <OpenImageIO/imageio.h>
Go to the source code of this file.
Classes | |
struct | MergeImagePass |
struct | SampleCount |
struct | MergeImageLayer |
struct | MergeImage |
Enumerations | |
enum | MergeChannelOp { MERGE_CHANNEL_NOP , MERGE_CHANNEL_COPY , MERGE_CHANNEL_SUM , MERGE_CHANNEL_AVERAGE , MERGE_CHANNEL_SAMPLES } |
Functions | |
static MergeChannelOp | parse_channel_operation (const string &pass_name) |
static bool | split_last_dot (string &in, string &suffix) |
static bool | parse_channel_name (string name, string &renderlayer, string &pass, string &channel, bool multiview_channels) |
static bool | parse_channels (const ImageSpec &in_spec, vector< MergeImageLayer > &layers, string &error) |
static bool | open_images (const vector< string > &filepaths, vector< MergeImage > &images, string &error) |
static void | merge_render_time (ImageSpec &spec, const vector< MergeImage > &images, const string &name, const bool average) |
static void | merge_layer_render_time (ImageSpec &spec, const vector< MergeImage > &images, const string &layer_name, const string &time_name, const bool average) |
static void | merge_channels_metadata (vector< MergeImage > &images, ImageSpec &out_spec) |
static void | alloc_pixels (const ImageSpec &spec, array< float > &pixels) |
static bool | merge_pixels (const vector< MergeImage > &images, const ImageSpec &out_spec, const unordered_map< string, SampleCount > &layer_samples, array< float > &out_pixels, string &error) |
static bool | save_output (const string &filepath, const ImageSpec &spec, const array< float > &pixels, string &error) |
static void | read_layer_samples (vector< MergeImage > &images, unordered_map< string, SampleCount > &layer_samples) |
enum MergeChannelOp |
Definition at line 380 of file merge.cpp.
References height, num_pixels, array< T, alignment >::resize(), and width.
Referenced by merge_pixels().
|
static |
Definition at line 318 of file merge.cpp.
References MergeImagePass::channel_name, blender::math::distance(), MergeImagePass::format, image(), MERGE_CHANNEL_COPY, MERGE_CHANNEL_NOP, merge_layer_render_time(), MergeImagePass::merge_offset, merge_render_time(), MergeImageLayer::name, MergeImagePass::op, MergeImageLayer::passes, MergeImageLayer::samples, and to_string().
Referenced by ImageMerger::run().
|
static |
Definition at line 297 of file merge.cpp.
References average(), image(), time, time_human_readable_from_seconds(), and time_human_readable_to_seconds().
Referenced by merge_channels_metadata().
|
static |
Definition at line 390 of file merge.cpp.
References alloc_pixels(), array< T, alignment >::data(), error(), FLOAT, MergeImageLayer::has_sample_pass, image(), MERGE_CHANNEL_AVERAGE, MERGE_CHANNEL_COPY, MERGE_CHANNEL_NOP, MERGE_CHANNEL_SAMPLES, MERGE_CHANNEL_SUM, MergeImagePass::merge_offset, MergeImageLayer::name, num_pixels, offset, MergeImagePass::offset, MergeImagePass::op, MergeImageLayer::passes, MergeImageLayer::sample_pass_offset, MergeImageLayer::samples, array< T, alignment >::size(), and stride.
Referenced by ImageMerger::run().
|
static |
Definition at line 278 of file merge.cpp.
References average(), image(), time, time_human_readable_from_seconds(), and time_human_readable_to_seconds().
Referenced by merge_channels_metadata().
|
static |
Definition at line 234 of file merge.cpp.
References error(), image(), and parse_channels().
Referenced by ImageMerger::run().
|
static |
Definition at line 112 of file merge.cpp.
References split_last_dot(), and view.
Referenced by parse_channels().
|
static |
Definition at line 77 of file merge.cpp.
References MERGE_CHANNEL_AVERAGE, MERGE_CHANNEL_COPY, MERGE_CHANNEL_SAMPLES, MERGE_CHANNEL_SUM, and string_startswith().
Referenced by parse_channels().
|
static |
Definition at line 134 of file merge.cpp.
References MergeImagePass::channel_name, blender::math::distance(), error(), MergeImagePass::format, if(), MergeImagePass::merge_offset, MergeImagePass::name, MergeImageLayer::name, MergeImagePass::offset, MergeImagePass::op, parse_channel_name(), parse_channel_operation(), string_endswith(), string_printf(), and string_startswith().
Referenced by IMB_exr_begin_read(), and open_images().
|
static |
Definition at line 520 of file merge.cpp.
References array< T, alignment >::data(), FLOAT, image(), initialize(), and array< T, alignment >::resize().
Referenced by ImageMerger::run().
|
static |
Definition at line 470 of file merge.cpp.
References blender::bke::idprop::create(), array< T, alignment >::data(), error(), FLOAT, usdtokens::out(), blender::bke::attribute_accessor_functions::remove(), and unique_name().
Referenced by ImageMerger::run().
|
static |