#ifndef DOCCONVERT_H
#define DOCCONVERT_H


#include <memory>


class DocConvert
{
public:
    DocConvert();
    ~DocConvert();

    void SetTitle(const char* title);
    void SetSource(const char* inFileName);
    void SetSourceData(const char* inData, size_t a_size);

    void Convert();

    void OutputHTML(const char* outFileName);
    void OutputPDF(const char* outFileName);

    // data is allocated
    void GetHTMLData(char** data, size_t* size);

    // data is not-allocated, you need to pass in and the size of it
    void GetPDFData(char* data, size_t* size);

    //void OutputBoth(const char* outFileNameHTML, const char* outFileNamePDF);
    //void ConvertToHTML(std::vector& outputData);
    //void ConvertToPDF(std::vector& outputData);

private:
    struct Pimpl;
    std::unique_ptr<Pimpl> m_pimpl;
};


#endif // DOCCONVERT_H
