using System.Runtime.InteropServices;
using EHF;

namespace Valg.EVA.Skanning.Scan.Api
{
    public interface IReadSoftApi
    {
        [ComVisible(true)]
        ehReturnValue Connect(IEHF_IScanApp scanAppClass, string file, string section);

        [ComVisible(true)]
        ehReturnValue Disconnect(IEHF_IScanApp scanAppClass);

        [ComVisible(true)]
        ehReturnValue OnScanBatchDialogShow(int bundleCount, int bundleIndex);

        [ComVisible(true)]
        ehReturnValue OnScanBeforeSaveDlg(int situation);

        [ComVisible(true)]
        ehReturnValue OnFormScanEnd();

        [ComVisible(true)]
        ehReturnValue OnScanNotifyUser(int errorSituation, string errorInfo);

        [ComVisible(true)]
        ehReturnValue OnAppError(int errorNo, int errorType, int errorId, int errorIdExt);

        [ComVisible(true)]
        ehReturnValue OnJobStarted();

        [ComVisible(true)]
        ehReturnValue OnJobStopped();
    }
}

