shun-iwasawa 6817df
#pragma once
shun-iwasawa 6817df
#ifndef IWA_CORRIDORGRADIENTFX_H
shun-iwasawa 6817df
#define IWA_CORRIDORGRADIENTFX_H
shun-iwasawa 6817df
shun-iwasawa 6817df
#include "tfxparam.h"
shun-iwasawa 6817df
#include "stdfx.h"
shun-iwasawa 6817df
#include "tparamset.h"
shun-iwasawa 6817df
shun-iwasawa 6817df
class Iwa_CorridorGradientFx final : public TStandardZeraryFx {
shun-iwasawa 6817df
  FX_PLUGIN_DECLARATION(Iwa_CorridorGradientFx)
shun-iwasawa 6817df
shun-iwasawa 6817df
  TIntEnumParamP m_shape;
shun-iwasawa 6817df
  TIntEnumParamP m_curveType;
shun-iwasawa 6817df
  TPointParamP m_points[2][4];  // [in/out][Qt::Corner]
shun-iwasawa 6817df
shun-iwasawa 6817df
  TPixelParamP m_innerColor;
shun-iwasawa 6817df
  TPixelParamP m_outerColor;
shun-iwasawa 6817df
shun-iwasawa 6817df
public:
shun-iwasawa 6817df
  Iwa_CorridorGradientFx();
shun-iwasawa 6817df
shun-iwasawa 6817df
  bool canHandle(const TRenderSettings &info, double frame) override {
shun-iwasawa 6817df
    return true;
shun-iwasawa 6817df
  }
shun-iwasawa 6817df
  bool doGetBBox(double frame, TRectD &bBox,
shun-iwasawa 6817df
                 const TRenderSettings &ri) override;
shun-iwasawa 6817df
  void doCompute(TTile &tile, double frame, const TRenderSettings &ri) override;
shun-iwasawa 6817df
  void getParamUIs(TParamUIConcept *&concepts, int &length) override;
shun-iwasawa 6817df
};
shun-iwasawa 6817df
shun-iwasawa 6817df
#endif