/*******************************************************************************************************
*
*
*
*
********************************************************************************************************/
#ifndef YOSEENALG_MIX_H_
#define YOSEENALG_MIX_H_

#include "../yc_type.h"

typedef struct _MixConfig {
    u8 MixMode;
    u8 MixRatio;//DSX, BLEND, 1/16
}MixConfig;

//
struct _MixContext;
typedef struct _MixContext MixContext;
extern "C" {
    SDK_API MixContext* mixCreate();
    SDK_API void mixFree(MixContext** pp);

    SDK_API void mixGetConfig(MixContext* context, MixConfig* config);
    SDK_API void mixSetConfig(MixContext* context, MixConfig* config);

    SDK_API void mixExecute(MixContext* context, bgra* mix, bgra* vis, u8* ir8, bgra* ir8Palette, u16 width, u16 height);
}

#endif