sane-test(5) SANE: „Scanner Access Now Easy” sane-test(5)

sane-test - controlor SANE pentru testarea interfețelor

Biblioteca sane-test implementează un controlor SANE (Scanner Access Now Easy) care permite testarea instalării SANE și a interfețelor SANE. Acesta oferă acces la un număr (aproape) nelimitat de dispozitive virtuale. Nu există suport pentru scanere sau camere reale. Cu toate acestea, controlorul simulează scanarea și configurarea opțiunilor.

Ideea nu este doar de a găsi erori în interfețe, ci și de a arăta toate capacitățile SANE. Prin urmare, controlorul sane-test implementează funcții și opțiuni care nu se găsesc (sau se găsesc rar) în alți controlori.

Controlorul este comentat în /etc/sane.d/dll.conf, deci fie caracterul de comentariu trebuie eliminat, fie controlorul trebuie apelat în mod explicit. De exemplu, scanimage -d test sau xscanimage test.

OPȚIUNILE MODULUI DE SCANARE

Opțiunea mode seleează modul de scanare (Gray sau Color).

Opțiunea depth determină numărul de biți pe eșantion (1. 8 sau 16). Rețineți că această valoare se referă la eșantion, nu la pixel. Astfel, adâncimea=16 are ca rezultat 48 de biți pe pixel în modul color. Cele mai uzuale combinații sunt: mode=Gray, depth=1 pentru lineart, mode=Gray, depth=8 pentru gri și mode=Color, depth=8 pentru modul color. Combinația de culoare și modul pe 1 bit este destul de obscură (8 culori), dar este permisă în standardul SANE. Cu toate acestea, semnificația biților nu este definită. În prezent, se utilizează 1 = intensitate mare și 0 = intensitate mică.

Definirea opțiunii hand-scanner are ca rezultat faptul că controlorul-test se comportă ca un scaner manual. Scanerele manuale nu cunosc a priori înălțimea imaginii. În schimb, acestea returnează o înălțime de -1. Definirea acestei opțiuni permite să se testeze dacă o interfață poate gestiona corect acest lucru. Această opțiune permite, de asemenea, o lățime fixă de 11 cm.

Definirea opțiunii three-pass simulează un scaner cu trei treceri. Scanerele color mai vechi trebuiau să scaneze imaginea o dată pentru fiecare culoare (roșu/verde/albastru) pentru a obține imaginea completă. Prin urmare, în acest mod sunt transmise trei cadre unice în modul color.

Opțiunea three-pass-order oferă suport pentru modificarea ordinii celor trei cadre (a se vedea opțiunea three-pass de mai sus). O interfață ar trebui să suporte toate ordinele.

Opțiunea resolution stabilește rezoluția imaginii în puncte pe inch.

Opțiunea source poate fi utilizată pentru a simula un alimentator automat de documente (ADF). După 10 scanări, ADF-ul va fi „gol”.

OPȚIUNI SPECIALE

Opțiunea test-picture permite stabilirea imaginii care este returnată către interfață. În timp ce „Solid white” și „Solid black” sunt destul de evidente, celelalte opțiuni necesită mai multe explicații. Modelele de culoare sunt utilizate pentru a determina dacă toate modurile și culorile lor sunt reprezentate corect de către interfață. Grila ar trebui să arate la fel în fiecare mod și rezoluție. Un tabel cu toate imaginile de test poate fi găsit la: http://www.meier-geinitz.de/sane/test-backend/test-pictures.html.

Dacă este definită opțiunea invert-endianness, se schimbă octeții superior și inferior ai datelor de imagine în modurile pe 16 biți. Această opțiune poate fi utilizată pentru a testa modurile pe 16 biți ale interfețelor frontale, de exemplu, pentru a verifica dacă interfețele folosesc modul corect de adresare.

Dacă opțiunea read-limit este definită, cantitatea maximă de date transferate la fiecare apel la sane_read() este limitată.

Opțiunea read-limit-size stabilește limita pentru opțiunea read-limit. O limită scăzută încetinește scanarea. Ea poate fi utilizată pentru a detecta erorile din interfață care apar din cauza unor presupuneri greșite privind dimensiunea memoriei tampon sau a unor probleme de sincronizare.

Opțiunea read-delay permite întârzierea datelor către interfață.

Opțiunea read-delay-duration selectează numărul de microsecunde pe care controlorul îl așteaptă după fiecare transfer al unei memorii tampon. Această opțiune este utilă pentru a găsi erori legate de sincronizare, în special dacă este utilizată în rețea.

În cazul în care opțiunea read-return-value este diferită de „Default”, starea selectată va fi returnată de fiecare apel la sane_read(). Acest lucru este util pentru a testa modul de gestionare a stărilor SANE de către interfață.

Dacă opțiunea ppl-loss este diferită de 0, aceasta determină numărul de pixeli care sunt "pierduți" la sfârșitul fiecărei linii. Asta înseamnă că liniile sunt umplute cu date neutilizate.

Opțiunea fuzzy-parameters selectează ca parametrii fuzzy (inexacți) să fie returnați atâta timp cât scanarea nu a fost inițiată. Această opțiune poate fi utilizată pentru a testa dacă aplicația de interfață utilizează parametrii pe care i-a primit înainte de începerea scanării (ceea ce nu ar trebui să facă).

Opțiunea non-blocking determină dacă trebuie să se utilizeze IO non-blocking (In/Ieș fără blocare) pentru sane_read(), dacă aceasta este acceptată de interfață.

Dacă opțiunea select-fd este definită, controlorul oferă un descriptor de fișier selectat pentru a detecta dacă sane_read() va returna date.

Dacă opțiunea enable-test-options este definită, este activată o listă destul de mare de opțiuni pentru testarea diferitelor tipuri de opțiuni SANE.

Opțiunea print-options poate fi utilizată pentru a imprima o listă cu toate opțiunile la ieșirea de eroare standard.

OPȚIUNI DE GEOMETRIE

Opțiunea tl-x determină poziția x din stânga-sus a zonei de scanare.

Opțiunea tl-y determină poziția y din stânga-sus a zonei de scanare.

Opțiunea br-x determină poziția x din dreapta jos a zonei de scanare.

Opțiunea br-y determină poziția y din dreapta jos a zonei de scanare.

OPȚIUNI DE TESTARE BOOLEANĂ

Există în total 6 opțiuni de testare booleane. Fiecare opțiune este numerotată. (3/6) înseamnă: aceasta este opțiunea 3 din 6. Schema de numerotare este menită să faciliteze detectarea opțiunilor care nu sunt afișate de către interfață (din cauza lipsei de suport sau a unor erori).

Opțiunea bool-soft-select-soft-detect (1/6) este o opțiune de testare booleană care are capacități de selectare software și de detectare software (și avansate). Este doar o opțiune booleană normală.

Opțiunea bool-hard-select-soft-detect (2/6) este o opțiune de testare booleană care are capacități de selectare hardware și detectare software (și avansate). Aceasta înseamnă că opțiunea nu poate fi definită de către interfață, ci de către utilizator (de exemplu, prin apăsarea unui buton de pe dispozitiv).

Opțiunea bool-hard-select (3/6) este o opțiune de testare booleană care are capacități de selecție hardware (și avansate). Aceasta înseamnă că opțiunea nu poate fi definită de către interfață, ci de către utilizator (de exemplu, prin apăsarea unui buton de pe dispozitiv) și nu poate fi citită de către interfață.

Opțiunea bool-soft-detect (4/6) este o opțiune de testare booleană care are capacități de detectare software (și avansate). Aceasta înseamnă că opțiunea este numai-pentru-citire.

Opțiunea bool-soft-select-soft-detect-emulated (5/6) este o opțiune de testare booleană care are capacități de selectare software, de detectare software și de emulare (și avansate).

Opțiunea bool-soft-select-soft-detect-auto (6/6) este o opțiune de testare booleană care are capacități de selectare software, de detectare software și automate (și avansate). Această opțiune poate fi definită automat de către controlor.

OPȚIUNI DE TESTARE CU NUMERE ÎNTREGI

Există în total de 7 opțiuni de testare cu numere întregi.

Opțiunea int (1/7) este o opțiune de testare cu numere întregi fără unitate (de măsură) și fără set de constrângeri.

Opțiunea int-constraint-range (2/7) este o opțiune de testare cu numere întregi cu unitatea de pixel și interval de constrângere stabilit. Minimul este 4, maximul 192, iar cantitatea este 2.

Opțiunea int-constraint-word-list (3/7) este o opțiune de testare cu numere întregi cu unitatea de biți și cu lista de cuvinte de constrângere stabilită.

Opțiunea int-constraint-array (4/7) este o opțiune de testare cu numere întregi cu unitatea mm și care utilizează o matrice fără constrângeri.

Opțiunea int-constraint-array-constraint-range (5/7) este o opțiune de testare cu numere întregi cu unitatea mm și care utilizează o matrice cu o restricție de interval. Minimul este 4, maximul 192, iar cantitatea este 2.

Opțiunea int-constraint-array-constraint-constraint-word-list (6/7) este o opțiune de testare cu numere întregi cu unitate de procentaj și care utilizează o constrângere de tip matrice sau listă de cuvinte.

Opțiunea int-inexact (7/7) este o opțiune de testare cu numere întregi care incrementează valoarea solicitată și returnează fanionul SANE_INFO_INEXACT.

OPȚIUNI DE TESTARE FIXE

Există 3 opțiuni de testare fixe în total.

Opțiunea fixed (1/3) este o opțiune de testare fixă, fără unitate (de măsură) și fără set de constrângeri.

Opțiunea fixed-constraint-range (2/3) este o opțiune de testare fixă cu unitate de microsecundă și interval de constrângere stabilit. Minimul este -42,17, maximul 32767,9999, iar cantitatea este 2,0.

Opțiunea fixed-constraint-word-list (3/3) este o opțiune de testare fixă, fără unitate și cu lista de cuvinte de constrângere stabilită.

OPȚIUNI DE TESTARE DE ȘIRURI

Există în total 3 opțiuni de testare a șirurilor.

Opțiunea string (1/3) este o opțiune de testare a șirurilor fără constrângere.

Opțiunea string-constraint-string-list (2/3) este o opțiune de testare a șirurilor cu constrângere de listă de șiruri.

Opțiunea string-constraint-long-string-list (3/3) este o opțiune de testare a șirurilor cu constrângere de listă de șiruri. Conține mai multe intrări...

OPȚIUNE DE TESTARE A BUTONULUI

Opțiunea button (1/1) este o opțiune de testare a butonului. Imprimă un text...

/etc/sane.d/test.conf
Fișierul de configurare a controlorului (a se vedea, de asemenea, descrierea SANE_CONFIG_DIR de mai jos). Valorile inițiale ale majorității opțiunilor SANE de bază pot fi configurate în acest fișier. Un șablon care conține toate valorile implicite este furnizat împreună cu acest controlor. Una dintre cele mai interesante valori poate fi number_of_devices (număr de dispozitive). Ea poate fi utilizată pentru a verifica capacitatea aplicației de interfață de a afișa o listă lungă de dispozitive. Valorile de configurare privind rezoluția și geometria pot fi utile pentru a testa modul de gestionare a fișierelor de dimensiuni mari.
/usr/lib/sane/libsane-test.a
Biblioteca statică care implementează acest controlor.
/usr/lib/sane/libsane-test.so
Biblioteca partajată care implementează acest controlor (prezentă pe sistemele care acceptă încărcare dinamică).

Această variabilă de mediu specifică lista de directoare care pot conține fișierul de configurare. Pe sistemele *NIX, directoarele sunt separate prin două puncte („:”), în cazul sistemelor OS/2, ele sunt separate prin punct și virgulă („;”). Dacă această variabilă nu este definită, fișierul de configurare este căutat în două directoare implicite: mai întâi, în directorul de lucru curent („.”) și apoi în /etc/sane.d. Dacă valoarea variabilei de mediu se termină cu caracterul separator de directoare, atunci directoarele implicite sunt căutate după directoarele specificate explicit. De exemplu, dacă se definește SANE_CONFIG_DIR la „/tmp/config:”, se vor căuta (în această ordine) directoarele tmp/config, . și /etc/sane.d.
Dacă biblioteca a fost compilată cu suportul de depanare activat, această variabilă de mediu controlează nivelul de depanare pentru acest controlor. Nivelurile mai mari de depanare cresc cantitatea de detalii informative a ieșirii.

Exemplu: export SANE_DEBUG_TEST=4

sane(7), scanimage(1), xscanimage(1)
http://www.meier-geinitz.de/sane/test-backend/

Henning Meier-Geinitz <henning@meier-geinitz.de>

- valorile din fișierul de configurare nu sunt testate pentru corectitudine

Traducerea în limba română a acestui manual a fost făcută de Remus-Gabriel Chelu <remusgabriel.chelu@disroot.org>

Această traducere este documentație gratuită; citiți Licența publică generală GNU Versiunea 3 sau o versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă NICIO RESPONSABILITATE.

Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la translation-team-ro@lists.sourceforge.net.

14 iulie 2008