Files
alexei lebedev 2815323fbc [mutable] Moved the Mutable plugin out of Experimental status into Beta.
#jira UE-223488
#rb jordi.rovira
#tests Editor
#rnx

#virtualized

[CL 36035608 by alexei lebedev in ue5-main branch]
2024-09-05 07:16:19 -04:00

70 lines
1.7 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "MuR/Ptr.h"
#include "MuR/RefCounted.h"
#include "MuT/Node.h"
#include "MuT/NodeImage.h"
namespace mu
{
// Forward definitions
class NodeColour;
typedef Ptr<NodeColour> NodeColourPtr;
typedef Ptr<const NodeColour> NodeColourPtrConst;
class NodeImagePlainColour;
typedef Ptr<NodeImagePlainColour> NodeImagePlainColourPtr;
typedef Ptr<const NodeImagePlainColour> NodeImagePlainColourPtrConst;
//! Node that multiplies the colors of an image, channel by channel.
//! \ingroup model
class MUTABLETOOLS_API NodeImagePlainColour : public NodeImage
{
public:
NodeImagePlainColour();
//-----------------------------------------------------------------------------------------
// Node Interface
//-----------------------------------------------------------------------------------------
const FNodeType* GetType() const override;
static const FNodeType* GetStaticType();
//-----------------------------------------------------------------------------------------
// Own Interface
//-----------------------------------------------------------------------------------------
//! Colour of the image.
NodeColourPtr GetColour() const;
void SetColour( NodeColourPtr );
//! New size or relative factor
void SetSize( int x, int y );
//-----------------------------------------------------------------------------------------
// Interface pattern
//-----------------------------------------------------------------------------------------
class Private;
Private* GetPrivate() const;
protected:
//! Forbidden. Manage with the Ptr<> template.
~NodeImagePlainColour();
private:
Private* m_pD;
};
}