Globale Variablen unüberschreibbar machen?
Verfasst: 09.08.2007 00:02
Folgendes:
Ich hab mir ein Modul (eine Include-Datei) zur Gamepad-Abfrage gebastelt. Dieses hat eigentlich nur zwei Proceduren und die Strukturen-Deklarationen. Für die Abfrage wichtig ist nur:
So ruf ich aus meinem Hauptprogramm dann z.B. auf
und es werden # Gamepad()s dimensioniert und die Dinger werden auch gleich aquried.
Bei InitGamepads wird der im Gamepad-Modul deklarierte Globale Structure-Array Gamepad() auf die Zahl der gewünschten Gamepads dimensioniert und per
ExamineGamepad(#)
wird die GamePad()-Struktur für Gamepad(#) mit den entsprechenden Daten gefüllt.
Kann ich die im Gamepad-Modul deklarierte Gamepad.einGamepad(#) für die anderen Module meines Codes lesbar aber unüberschreibbar machen so das die Gamepad()-Structure nur im Gamepad-Code-Modul ausgefüllt aber von keinem anderen Code (z.B. im Hauptprgramm oder Math-Modul usw) geändert werden kann. Sozusagen "Read-Only" ausserhalb der Gamepad-Abfragen?
Ich hab mir ein Modul (eine Include-Datei) zur Gamepad-Abfrage gebastelt. Dieses hat eigentlich nur zwei Proceduren und die Strukturen-Deklarationen. Für die Abfrage wichtig ist nur:
Code: Alles auswählen
structure einGamepad
XAxis.l
YAxis.l
ZAxis.l
rZAxis.l
HiAxis.l
POVState.l
POVReleased
ButtonPressed[12]
ButtonReleased[12]
endstructure
global dim GamePad.einGamepad(0)
So ruf ich aus meinem Hauptprogramm dann z.B. auf
Code: Alles auswählen
hatGamePad = Initgamepads(#)
Code: Alles auswählen
while hatGamepad
hatGamePad = ExamineGamepad()
; gamepad() auswerten
wend
ExamineGamepad(#)
wird die GamePad()-Struktur für Gamepad(#) mit den entsprechenden Daten gefüllt.
Kann ich die im Gamepad-Modul deklarierte Gamepad.einGamepad(#) für die anderen Module meines Codes lesbar aber unüberschreibbar machen so das die Gamepad()-Structure nur im Gamepad-Code-Modul ausgefüllt aber von keinem anderen Code (z.B. im Hauptprgramm oder Math-Modul usw) geändert werden kann. Sozusagen "Read-Only" ausserhalb der Gamepad-Abfragen?