#ifndef FLUTTER_FLOW_OHOS_LAYERS_TRANSFORM_LAYER_H
#define FLUTTER_FLOW_OHOS_LAYERS_TRANSFORM_LAYER_H
#include "include/core/SkMatrix.h"
#include "flutter/flow/ohos_layers/container_layer.h"
namespace flutter::OHOS {
class TransformLayer : public ContainerLayer {
public:
explicit TransformLayer(const SkMatrix& transform) : transform_(transform)
{
if (!transform_.isFinite()) {
transform_.setIdentity();
}
}
~TransformLayer() override = default;
void Prepare(const SkMatrix& matrix) override;
void Paint(const PaintContext& paintContext) const override;
private:
SkMatrix transform_;
FML_DISALLOW_COPY_AND_ASSIGN(TransformLayer);
};
}
#endif