ProtoTracer  1.0
Real-time 3D rendering and animation engine
Loading...
Searching...
No Matches
Passthrough.h
Go to the documentation of this file.
1/**
2 * @file Passthrough.h
3 * @brief Defines the `Passthrough` effect class for applying no modifications to pixel groups.
4 *
5 * The `Passthrough` effect serves as a placeholder or default effect that simply
6 * forwards pixel data without any alterations.
7 *
8 * @date 22/12/2024
9 * @version 1.0
10 * @author Coela Can't
11 */
12
13#pragma once
14
15#include "Effect.h"
16
17/**
18 * @class Passthrough
19 * @brief A no-operation effect that leaves pixel groups unchanged.
20 *
21 * The `Passthrough` effect is used when no transformations or modifications
22 * are required for a pixel group.
23 */
24class Passthrough : public Effect {
25public:
26 /**
27 * @brief Constructs a `Passthrough` effect instance.
28 *
29 * This constructor initializes the `Passthrough` effect without requiring any parameters.
30 */
32
33 /**
34 * @brief Applies the passthrough effect to the given pixel group.
35 *
36 * This method leaves the pixel group unchanged, effectively acting as a no-op.
37 *
38 * @param pixelGroup Pointer to the `IPixelGroup` to which the effect will be applied.
39 */
40 void ApplyEffect(IPixelGroup* pixelGroup) override;
41};
Defines the base Effect class for applying transformations or effects to pixel groups.
Abstract base class for applying visual effects to pixel groups.
Definition Effect.h:26
Interface for managing and interacting with a collection of pixels.
Definition IPixelGroup.h:25
A no-operation effect that leaves pixel groups unchanged.
Definition Passthrough.h:24
void ApplyEffect(IPixelGroup *pixelGroup) override
Applies the passthrough effect to the given pixel group.
Passthrough()
Constructs a Passthrough effect instance.