package com.epson.lib.escani2;

public interface EscanI2NativeInterface {

    public interface PageWriteCallback {
        void pageWriteDone(int i, int i2);
    }

    int calibrateAdf();

    void cancelScanJni();

    void cancelWaitingJni();

    int cleanAdf();

    int freeBlockedCalibrateAdf();

    int freeBlockedCleanAdf();

    int getCapability(ScannerI2Capability scannerI2Capability);

    int getEscanI2LibError();

    int[] getMaintAppliedParameters();

    int[] getMaintCapability();

    int getScanPages(int i);

    int getScannerInfo(ScannerI2Info scannerI2Info);

    int initializeLibraryJni();

    int releaseLibraryJni();

    int releaseScannerJni();

    int scan(int i, String str, String str2);

    void setPageWriteCallback(PageWriteCallback pageWriteCallback);

    int setPowerOffTime(int i);

    int setPowerSaveTime(int i);

    int setScannerJni(String str);

    int startScan(int i, int i2, int i3, int i4, int i5, int i6, int i7, int i8, int i9, int i10, int i11, int i12, int i13, int i14, int i15, int i16, int i17, int i18, int i19, int i20, int i21);

    int waitStartRequest();
}
