#NEWLINE# def get_attributes( self ) : #NEWLINE# #INDENT# result = [ ] #NEWLINE# count = glGetProgramiv ( self . handle , GL_ACTIVE_ATTRIBUTES ) #NEWLINE# name = create_string_buffer ( 256 ) #NEWLINE# size = c_int ( ) #NEWLINE# data_type = c_int ( ) #NEWLINE# for index in xrange ( count ) : #NEWLINE# #INDENT# glGetActiveAttrib ( self . handle , index , 256 , None , byref ( size ) , byref ( data_type ) , name ) #NEWLINE# location = glGetAttribLocation ( self . handle , name . value ) #NEWLINE# attribute = Attribute ( location , name . value , size . value , data_type . value ) #NEWLINE# result . append ( attribute ) #NEWLINE# #UNINDENT# return result