glGetAttachedShaders

Aus DGL Wiki
Wechseln zu: Navigation, Suche

glGetAttachedShaders (glGetAttachedObjectsARB)

Name

glGetAttachedShaders - liefert Handles auf die Shaderobjekte welche an ein Programmobjekt gebunden sind.


Delphi-Spezifikation

procedure glGetAttachedShaders(program : GLuint; maxCount : GLsizei; count : PGLsizei; shaders : PGLuint);
procedure glGetAttachedObjectsARB(programobj : GLhandleARB; maxCount : GLsizei; var count : GLsizei; objects : PGLhandleARB);


Parameter

program Bestimmt das programmobjekt welches abgefragt werden soll.
maxCount Enthält die Größe des Arrays in welchem die zurück gelieferten Shadernamen stehen.
count Zeiger auf eine Ganzzahl welche die Anzahl der tatsächlich in shaders zurück gelierferten Namen.
shaders Zeiger auf den ersten Eintrag eines Feldes welches benutzt werden soll um die zurück gelieferten Shadernamen abzulegen.



Beschreibung

glGetAttachedShaders liefert die OpenGL Namen der an program gebundenen Shaderobjekte. Die Namen der Shaderobjekte werden im Array shaders zurückgeliefert. Die tatsächliche Anzahl Shadernamen die in shaders abgelegt wurden, wird über count zurück geliefert. Falls keine Shaderobjekte an program gebunden sind wird count auf 0 gesetzt. Die maximale Anzahl Shadernamen die in shaders abgelegt werden können wird durch maxCount spezifiziert. (maxCoun ist also die größe des Feldes shaders)

Falls die Anzahl der zurück gelieferten Namen nicht benötigt wird (da sie zum Beispiel über einen Aufruf von glGetProgram ermittelt wurde), kann count auch ein NIL-Zeiger übergeben werden. Die tatsächliche Anzahl an program gebundener Shader kann mittels glGetProgram mit dem Tooken GL_ATTACHED_SHADERS abgefragt werden.


Hinweise

glGetAttachedShaders ist erst ab OpenGL Version 2.0 verfügbar.

Fehlermeldungen

GL_INVALID_VALUE wird generiert wenn program kein von OpenGL generierter Wert ist.

GL_INVALID_OPERATION wird generiert wenn program kein Programmobjekt ist.

GL_INVALID_VALUE wird generiert wenn maxCount kleiner 0 ist.

GL_INVALID_OPERATION wird generiert wenn glGetAttachedShaders innerhalb eines glBegin-glEnd Blocks aufgerufen wird.



Zugehörige Wertrückgaben

glGetProgram mit dem Tooken GL_ATTACHED_SHADERS.

glIsProgram


Siehe auch

glAttachShader, glDeleteShader