#ifndef CHANNELS_SCALE_H_
#define CHANNELS_SCALE_H_
#include "tensorOperate.h"
class ChanneleSacle  : public TensorOperate 
{
    public:
        ChanneleSacle();
        ChanneleSacle(int ifType, int iID, int iMaxSeqNum, DevicesBatchDisptach *iDevicesBatchDisptach);
        virtual ~ChanneleSacle();
        void SetLayerConfig(int ifType, int iID, int iMaxSeqNum, DevicesBatchDisptach *iDevicesBatchDisptach);
        void CompuateOutY(int devID, int seqNum);
        void CompuateOutD(int devID, int seqNum);
        void CreateParaAndInstance();
        void ComputeAndCreateOutYInDTensorInfo();
        void ComputerYMemRealease(int devID);
        void ComputerDMemRealease(int devID);
    
    private:
        void SetYDSaveInfo();
        int inChannels, inHeight, inWidth;
};
#endif
