shithub: candycrisis

ref: e646d6d829d50983ec2cba8e230a0b95341f6752
dir: /src/support/ModStream.h/

View raw version
#pragma once

#include "cmixer.h"

namespace ibxm {
extern "C" {
#include "ibxm.h"
}
}

namespace cmixer {
class ModStream : public Source {
    ibxm::module* module;
    ibxm::replay* replay;
    std::vector<char> moduleFile;
    std::vector<int> replayBuffer;
    int rbOffset;
    int rbLength;

    void Rewind2();
    void FillBuffer(int16_t* buffer, int length);

public:
    ModStream(std::vector<char>&& rawModule);
};
}