Skip to content

Instantly share code, notes, and snippets.

@denisrudnei
Created May 8, 2022 01:09
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save denisrudnei/59602f12b67ec4141d26cedd7e398af3 to your computer and use it in GitHub Desktop.
Save denisrudnei/59602f12b67ec4141d26cedd7e398af3 to your computer and use it in GitHub Desktop.
Binding para dart da lib do SAT Elgin Smart
// AUTO GENERATED FILE, DO NOT EDIT.
//
// Generated by `package:ffigen`.
import 'dart:ffi' as ffi;
class NativeLibrary {
/// Holds the symbol lookup function.
final ffi.Pointer<T> Function<T extends ffi.NativeType>(String symbolName)
_lookup;
/// The symbols are looked up in [dynamicLibrary].
NativeLibrary(ffi.DynamicLibrary dynamicLibrary)
: _lookup = dynamicLibrary.lookup;
/// The symbols are looked up with [lookup].
NativeLibrary.fromLookup(
ffi.Pointer<T> Function<T extends ffi.NativeType>(String symbolName)
lookup)
: _lookup = lookup;
/// Lista todos os dispositivos SAT livres encontrados na máquina identificado
/// o seu modelo, hub e port usb, e número de serie retornado numa string json.
ffi.Pointer<ffi.Int8> ListAvailableSatAsJson() {
return _ListAvailableSatAsJson();
}
late final _ListAvailableSatAsJsonPtr =
_lookup<ffi.NativeFunction<ffi.Pointer<ffi.Int8> Function()>>(
'ListAvailableSatAsJson');
late final _ListAvailableSatAsJson =
_ListAvailableSatAsJsonPtr.asFunction<ffi.Pointer<ffi.Int8> Function()>();
int AbreSerialSAT(
int commPort,
int nBaudRate,
int nBits,
int nParity,
int nStopBits,
) {
return _AbreSerialSAT(
commPort,
nBaudRate,
nBits,
nParity,
nStopBits,
);
}
late final _AbreSerialSATPtr = _lookup<
ffi.NativeFunction<
ffi.Int32 Function(ffi.Int32, ffi.Int32, ffi.Int32, ffi.Int32,
ffi.Int32)>>('AbreSerialSAT');
late final _AbreSerialSAT =
_AbreSerialSATPtr.asFunction<int Function(int, int, int, int, int)>();
/// Configura a biblioteca para utilizar um SAT com o numero de serie
/// especificado.
int FiltraSATNumSerie(
ffi.Pointer<ffi.Int8> numero_serie,
) {
return _FiltraSATNumSerie(
numero_serie,
);
}
late final _FiltraSATNumSeriePtr =
_lookup<ffi.NativeFunction<ffi.Int32 Function(ffi.Pointer<ffi.Int8>)>>(
'FiltraSATNumSerie');
late final _FiltraSATNumSerie =
_FiltraSATNumSeriePtr.asFunction<int Function(ffi.Pointer<ffi.Int8>)>();
/// Configura a biblioteca para utilizar um SAT na porta USB especificada.
int FiltraSATUsb(
int bus,
int port,
) {
return _FiltraSATUsb(
bus,
port,
);
}
late final _FiltraSATUsbPtr =
_lookup<ffi.NativeFunction<ffi.Int32 Function(ffi.Uint32, ffi.Uint32)>>(
'FiltraSATUsb');
late final _FiltraSATUsb =
_FiltraSATUsbPtr.asFunction<int Function(int, int)>();
/// Configura a biblioteca para utilizar o primeiro SAT encontrado.
///
/// Esse modo é habilitado por padrão.
void LimpaFiltrosSAT() {
return _LimpaFiltrosSAT();
}
late final _LimpaFiltrosSATPtr =
_lookup<ffi.NativeFunction<ffi.Void Function()>>('LimpaFiltrosSAT');
late final _LimpaFiltrosSAT =
_LimpaFiltrosSATPtr.asFunction<void Function()>();
/// Permite que a biblioteca mantenha a conexão USB aberta
/// até que a aplicação seja finalizada
///
/// Esse modo é habilitado por padrão
void HabilitarConexaoContinua() {
return _HabilitarConexaoContinua();
}
late final _HabilitarConexaoContinuaPtr =
_lookup<ffi.NativeFunction<ffi.Void Function()>>(
'HabilitarConexaoContinua');
late final _HabilitarConexaoContinua =
_HabilitarConexaoContinuaPtr.asFunction<void Function()>();
/// Fecha a conexao USB apos cada resposta ser recebida,
/// permitindo que outras aplicacoes acessem o mesmo dispositivo
///
/// Aviso: Nesse modo de operação o número de sessão
/// deve ser controlado externamente
void DesabilitarConexaoContinua() {
return _DesabilitarConexaoContinua();
}
late final _DesabilitarConexaoContinuaPtr =
_lookup<ffi.NativeFunction<ffi.Void Function()>>(
'DesabilitarConexaoContinua');
late final _DesabilitarConexaoContinua =
_DesabilitarConexaoContinuaPtr.asFunction<void Function()>();
/// Consulta o estado de conexão do SAT
ffi.Pointer<ffi.Int8> ConsultarSAT(
int numSessao,
) {
return _ConsultarSAT(
numSessao,
);
}
late final _ConsultarSATPtr =
_lookup<ffi.NativeFunction<ffi.Pointer<ffi.Int8> Function(ffi.Int32)>>(
'ConsultarSAT');
late final _ConsultarSAT =
_ConsultarSATPtr.asFunction<ffi.Pointer<ffi.Int8> Function(int)>();
ffi.Pointer<ffi.Int8> ConsultarStatusOperacional(
int numSessao,
ffi.Pointer<ffi.Int8> codAtivacao,
) {
return _ConsultarStatusOperacional(
numSessao,
codAtivacao,
);
}
late final _ConsultarStatusOperacionalPtr = _lookup<
ffi.NativeFunction<
ffi.Pointer<ffi.Int8> Function(
ffi.Int32, ffi.Pointer<ffi.Int8>)>>('ConsultarStatusOperacional');
late final _ConsultarStatusOperacional = _ConsultarStatusOperacionalPtr
.asFunction<ffi.Pointer<ffi.Int8> Function(int, ffi.Pointer<ffi.Int8>)>();
ffi.Pointer<ffi.Int8> EnviarDadosVenda(
int numSessao,
ffi.Pointer<ffi.Int8> codAtivacao,
ffi.Pointer<ffi.Int8> dadosVenda,
) {
return _EnviarDadosVenda(
numSessao,
codAtivacao,
dadosVenda,
);
}
late final _EnviarDadosVendaPtr = _lookup<
ffi.NativeFunction<
ffi.Pointer<ffi.Int8> Function(ffi.Int32, ffi.Pointer<ffi.Int8>,
ffi.Pointer<ffi.Int8>)>>('EnviarDadosVenda');
late final _EnviarDadosVenda = _EnviarDadosVendaPtr.asFunction<
ffi.Pointer<ffi.Int8> Function(
int, ffi.Pointer<ffi.Int8>, ffi.Pointer<ffi.Int8>)>();
/// Consulta as informações de log disponível no equipamento
ffi.Pointer<ffi.Int8> ExtrairLogs(
int numSessao,
ffi.Pointer<ffi.Int8> codAtivacao,
) {
return _ExtrairLogs(
numSessao,
codAtivacao,
);
}
late final _ExtrairLogsPtr = _lookup<
ffi.NativeFunction<
ffi.Pointer<ffi.Int8> Function(
ffi.Int32, ffi.Pointer<ffi.Int8>)>>('ExtrairLogs');
late final _ExtrairLogs = _ExtrairLogsPtr.asFunction<
ffi.Pointer<ffi.Int8> Function(int, ffi.Pointer<ffi.Int8>)>();
ffi.Pointer<ffi.Int8> AtivarSAT(
int numSessao,
int tipoCertificado,
ffi.Pointer<ffi.Int8> codAtivacao,
ffi.Pointer<ffi.Int8> cnpj,
int cUF,
) {
return _AtivarSAT(
numSessao,
tipoCertificado,
codAtivacao,
cnpj,
cUF,
);
}
late final _AtivarSATPtr = _lookup<
ffi.NativeFunction<
ffi.Pointer<ffi.Int8> Function(
ffi.Int32,
ffi.Int32,
ffi.Pointer<ffi.Int8>,
ffi.Pointer<ffi.Int8>,
ffi.Int32)>>('AtivarSAT');
late final _AtivarSAT = _AtivarSATPtr.asFunction<
ffi.Pointer<ffi.Int8> Function(
int, int, ffi.Pointer<ffi.Int8>, ffi.Pointer<ffi.Int8>, int)>();
ffi.Pointer<ffi.Int8> AssociarAssinatura(
int numSessao,
ffi.Pointer<ffi.Int8> codAtivacao,
ffi.Pointer<ffi.Int8> conjuntoCNPJ,
ffi.Pointer<ffi.Int8> signAC,
) {
return _AssociarAssinatura(
numSessao,
codAtivacao,
conjuntoCNPJ,
signAC,
);
}
late final _AssociarAssinaturaPtr = _lookup<
ffi.NativeFunction<
ffi.Pointer<ffi.Int8> Function(
ffi.Int32,
ffi.Pointer<ffi.Int8>,
ffi.Pointer<ffi.Int8>,
ffi.Pointer<ffi.Int8>)>>('AssociarAssinatura');
late final _AssociarAssinatura = _AssociarAssinaturaPtr.asFunction<
ffi.Pointer<ffi.Int8> Function(int, ffi.Pointer<ffi.Int8>,
ffi.Pointer<ffi.Int8>, ffi.Pointer<ffi.Int8>)>();
ffi.Pointer<ffi.Int8> ConsultarNumeroSessao(
int numSessao,
ffi.Pointer<ffi.Int8> codAtivacao,
int numSessaoConsulta,
) {
return _ConsultarNumeroSessao(
numSessao,
codAtivacao,
numSessaoConsulta,
);
}
late final _ConsultarNumeroSessaoPtr = _lookup<
ffi.NativeFunction<
ffi.Pointer<ffi.Int8> Function(ffi.Int32, ffi.Pointer<ffi.Int8>,
ffi.Int32)>>('ConsultarNumeroSessao');
late final _ConsultarNumeroSessao = _ConsultarNumeroSessaoPtr.asFunction<
ffi.Pointer<ffi.Int8> Function(int, ffi.Pointer<ffi.Int8>, int)>();
ffi.Pointer<ffi.Int8> ConsultarUltimaSessaoFiscal(
int numSessao,
ffi.Pointer<ffi.Int8> codAtivacao,
) {
return _ConsultarUltimaSessaoFiscal(
numSessao,
codAtivacao,
);
}
late final _ConsultarUltimaSessaoFiscalPtr = _lookup<
ffi.NativeFunction<
ffi.Pointer<ffi.Int8> Function(ffi.Int32,
ffi.Pointer<ffi.Int8>)>>('ConsultarUltimaSessaoFiscal');
late final _ConsultarUltimaSessaoFiscal = _ConsultarUltimaSessaoFiscalPtr
.asFunction<ffi.Pointer<ffi.Int8> Function(int, ffi.Pointer<ffi.Int8>)>();
ffi.Pointer<ffi.Int8> CancelarUltimaVenda(
int numSessao,
ffi.Pointer<ffi.Int8> codAtivacao,
ffi.Pointer<ffi.Int8> chave,
ffi.Pointer<ffi.Int8> dadosCanc,
) {
return _CancelarUltimaVenda(
numSessao,
codAtivacao,
chave,
dadosCanc,
);
}
late final _CancelarUltimaVendaPtr = _lookup<
ffi.NativeFunction<
ffi.Pointer<ffi.Int8> Function(
ffi.Int32,
ffi.Pointer<ffi.Int8>,
ffi.Pointer<ffi.Int8>,
ffi.Pointer<ffi.Int8>)>>('CancelarUltimaVenda');
late final _CancelarUltimaVenda = _CancelarUltimaVendaPtr.asFunction<
ffi.Pointer<ffi.Int8> Function(int, ffi.Pointer<ffi.Int8>,
ffi.Pointer<ffi.Int8>, ffi.Pointer<ffi.Int8>)>();
ffi.Pointer<ffi.Int8> ConfigurarInterfaceDeRede(
int numSessao,
ffi.Pointer<ffi.Int8> codAtivacao,
ffi.Pointer<ffi.Int8> configRede,
) {
return _ConfigurarInterfaceDeRede(
numSessao,
codAtivacao,
configRede,
);
}
late final _ConfigurarInterfaceDeRedePtr = _lookup<
ffi.NativeFunction<
ffi.Pointer<ffi.Int8> Function(ffi.Int32, ffi.Pointer<ffi.Int8>,
ffi.Pointer<ffi.Int8>)>>('ConfigurarInterfaceDeRede');
late final _ConfigurarInterfaceDeRede =
_ConfigurarInterfaceDeRedePtr.asFunction<
ffi.Pointer<ffi.Int8> Function(
int, ffi.Pointer<ffi.Int8>, ffi.Pointer<ffi.Int8>)>();
ffi.Pointer<ffi.Int8> AtualizarSoftwareSAT(
int numSessao,
ffi.Pointer<ffi.Int8> codAtivacao,
) {
return _AtualizarSoftwareSAT(
numSessao,
codAtivacao,
);
}
late final _AtualizarSoftwareSATPtr = _lookup<
ffi.NativeFunction<
ffi.Pointer<ffi.Int8> Function(
ffi.Int32, ffi.Pointer<ffi.Int8>)>>('AtualizarSoftwareSAT');
late final _AtualizarSoftwareSAT = _AtualizarSoftwareSATPtr.asFunction<
ffi.Pointer<ffi.Int8> Function(int, ffi.Pointer<ffi.Int8>)>();
ffi.Pointer<ffi.Int8> BloquearSAT(
int numSessao,
ffi.Pointer<ffi.Int8> codAtivacao,
) {
return _BloquearSAT(
numSessao,
codAtivacao,
);
}
late final _BloquearSATPtr = _lookup<
ffi.NativeFunction<
ffi.Pointer<ffi.Int8> Function(
ffi.Int32, ffi.Pointer<ffi.Int8>)>>('BloquearSAT');
late final _BloquearSAT = _BloquearSATPtr.asFunction<
ffi.Pointer<ffi.Int8> Function(int, ffi.Pointer<ffi.Int8>)>();
ffi.Pointer<ffi.Int8> DesbloquearSAT(
int numSessao,
ffi.Pointer<ffi.Int8> codAtivacao,
) {
return _DesbloquearSAT(
numSessao,
codAtivacao,
);
}
late final _DesbloquearSATPtr = _lookup<
ffi.NativeFunction<
ffi.Pointer<ffi.Int8> Function(
ffi.Int32, ffi.Pointer<ffi.Int8>)>>('DesbloquearSAT');
late final _DesbloquearSAT = _DesbloquearSATPtr.asFunction<
ffi.Pointer<ffi.Int8> Function(int, ffi.Pointer<ffi.Int8>)>();
ffi.Pointer<ffi.Int8> TesteFimAFim(
int numSessao,
ffi.Pointer<ffi.Int8> codAtivacao,
ffi.Pointer<ffi.Int8> dadosVenda,
) {
return _TesteFimAFim(
numSessao,
codAtivacao,
dadosVenda,
);
}
late final _TesteFimAFimPtr = _lookup<
ffi.NativeFunction<
ffi.Pointer<ffi.Int8> Function(ffi.Int32, ffi.Pointer<ffi.Int8>,
ffi.Pointer<ffi.Int8>)>>('TesteFimAFim');
late final _TesteFimAFim = _TesteFimAFimPtr.asFunction<
ffi.Pointer<ffi.Int8> Function(
int, ffi.Pointer<ffi.Int8>, ffi.Pointer<ffi.Int8>)>();
ffi.Pointer<ffi.Int8> ComunicarCertificadoICPBRASIL(
int numSessao,
ffi.Pointer<ffi.Int8> codAtivacao,
ffi.Pointer<ffi.Int8> certificado,
) {
return _ComunicarCertificadoICPBRASIL(
numSessao,
codAtivacao,
certificado,
);
}
late final _ComunicarCertificadoICPBRASILPtr = _lookup<
ffi.NativeFunction<
ffi.Pointer<ffi.Int8> Function(ffi.Int32, ffi.Pointer<ffi.Int8>,
ffi.Pointer<ffi.Int8>)>>('ComunicarCertificadoICPBRASIL');
late final _ComunicarCertificadoICPBRASIL =
_ComunicarCertificadoICPBRASILPtr.asFunction<
ffi.Pointer<ffi.Int8> Function(
int, ffi.Pointer<ffi.Int8>, ffi.Pointer<ffi.Int8>)>();
ffi.Pointer<ffi.Int8> TrocarCodigoDeAtivacao(
int numSessao,
ffi.Pointer<ffi.Int8> codAtivacaoAtual,
int opcao,
ffi.Pointer<ffi.Int8> novoCodigo,
ffi.Pointer<ffi.Int8> novoCodigoConfirma,
) {
return _TrocarCodigoDeAtivacao(
numSessao,
codAtivacaoAtual,
opcao,
novoCodigo,
novoCodigoConfirma,
);
}
late final _TrocarCodigoDeAtivacaoPtr = _lookup<
ffi.NativeFunction<
ffi.Pointer<ffi.Int8> Function(
ffi.Int32,
ffi.Pointer<ffi.Int8>,
ffi.Int32,
ffi.Pointer<ffi.Int8>,
ffi.Pointer<ffi.Int8>)>>('TrocarCodigoDeAtivacao');
late final _TrocarCodigoDeAtivacao = _TrocarCodigoDeAtivacaoPtr.asFunction<
ffi.Pointer<ffi.Int8> Function(int, ffi.Pointer<ffi.Int8>, int,
ffi.Pointer<ffi.Int8>, ffi.Pointer<ffi.Int8>)>();
/// Gera número de sessão
///
/// O número de sessão é garantido não foi utilizado pelo menos nas
/// últimas 100 comunicações.
int GeraNumeroSessao() {
return _GeraNumeroSessao();
}
late final _GeraNumeroSessaoPtr =
_lookup<ffi.NativeFunction<ffi.Int32 Function()>>('GeraNumeroSessao');
late final _GeraNumeroSessao =
_GeraNumeroSessaoPtr.asFunction<int Function()>();
/// Retorna um vetor de caracteres, com a informação de versão. É de
/// responsabilidade da função que chamar `VersaoLib` de desalocar a
/// memoria.
ffi.Pointer<ffi.Int8> VersaoLib() {
return _VersaoLib();
}
late final _VersaoLibPtr =
_lookup<ffi.NativeFunction<ffi.Pointer<ffi.Int8> Function()>>(
'VersaoLib');
late final _VersaoLib =
_VersaoLibPtr.asFunction<ffi.Pointer<ffi.Int8> Function()>();
ffi.Pointer<ffi.Int8> sat_log_variaveis() {
return _sat_log_variaveis();
}
late final _sat_log_variaveisPtr =
_lookup<ffi.NativeFunction<ffi.Pointer<ffi.Int8> Function()>>(
'sat_log_variaveis');
late final _sat_log_variaveis =
_sat_log_variaveisPtr.asFunction<ffi.Pointer<ffi.Int8> Function()>();
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment