uEye Kamera-Handbuch Version 4.92
![]() |
![]() |
USB 2.0 USB 3.0 GigE |
USB 2.0 USB 3.0 GigE |
Syntax
INT is_AllocImageMem (HIDS hCam, INT width, INT height, INT bitspixel, char** ppcImgMem, INT* pid)
Beschreibung
is_AllocImageMem()alloziert einen Bildspeicher für ein Bild der Breite width, der Höhe height und der Farbtiefe bitspixel. Die Speichergröße ist:
size = [width * int((bitspixel + 7) / 8)] * height
Der Zeileninkrement berechnet sich zu:
lineinc = width * int[(bitspixel + 7) / 8]
Der Zeileninkrement kann mit der Funktion is_GetImgMemPitch() ausgelesen werden.
Die Anfangsadresse des Speicherbereichs wird über ppcImgMem zurückgegeben.
pid gibt eine Identifikationsnummer des allozierten Speichers zurück. Ein neu allozierter Speicher ist nicht direkt aktiv, d. h. Bilder werden nicht direkt in diesen neuen Speicher digitalisiert. Er muss zuerst mit is_SetImageMem() aktiv gesetzt werden.
Der zurückgegebene Zeiger muss gesichert werden und darf nicht verändert werden, da dieser für alle weiteren ImageMem-Funktionen benötigt wird. Die Freigabe des Speichers erfolgt mit is_FreeImageMem().
![]() |
Im Direct3D- oder OpenGL-Modus muss kein Bildspeicher angelegt werden. |
![]() |
RGB16 und RGB 15 benötigen denselben Speicherplatz, können aber anhand des Parameters bitspixel differenziert werden. Für Informationen zur Bittiefe bei verschiedenen Farbformaten siehe Kapitel Anhang: Farb- und Speicherformate. |
![]() |
Aktuelle Betriebssysteme lagern einzelne, länger nicht benutzte Bereiche des Arbeitsspeichers auf die langsamere Festplatte aus, falls der freie physische Arbeitsspeicher knapp wird. Daher kann sich die Bildaufnahme insgesamt verlangsamen, falls mehr Bildspeicher reserviert wurde, als gleichzeitig im Arbeitsspeicher vorgehalten werden kann. |
Übergabeparameter
hCam |
Handle auf Kamera |
width |
Breite des Bildes |
height |
Höhe des Bildes |
bitspixel |
Bittiefe des Bildes (Bits pro Pixel). |
ppcImgMem |
Gibt den Zeiger auf den Speicheranfang zurück |
pid |
Gibt die ID für diesen Speicher zurück |
Rückgabewert
IS_CANT_ADD_TO_SEQUENCE |
Der Bildspeicher befindet sich bereits in der Sequenz und kann nicht doppelt hinzugefügt werden. |
IS_INVALID_CAMERA_HANDLE |
Ungültiges Kamera-Handle |
IS_INVALID_MEMORY_POINTER |
Ungültiger Zeiger oder ungültige Speicher-ID |
IS_INVALID_PARAMETER |
Einer der übergebenen Parameter ist außerhalb des gültigen Bereichs, oder für diesen Sensor nicht unterstützt, bzw. in diesem Modus nicht zugänglich. |
IS_NO_SUCCESS |
Allgemeine Fehlermeldung |
IS_OUT_OF_MEMORY |
Es konnte kein Speicher alloziert werden. |
IS_SEQUENCE_BUF_ALREADY_LOCKED |
Der Speicher konnte nicht gelockt werden. Der Zeiger auf den Buffer ist ungültig. |
IS_SUCCESS |
Funktion erfolgreich |
Verwandte Funktionen
Beispielprogramme
•uEyeRotationDemo (C++)
Haben Sie Verbesserungshinweise? Senden Sie ein kurzes
Feedback zu diesem Kapitel.
Vielen Dank!
Bei technischen Fragen wenden Sie sich bitte an Ihren lokalen Händler oder nutzen Sie das Support-Formular auf unserer Internetseite.