• Navigation überspringen
  • Zur Navigation
  • Zum Seitenende
Organisationsmenü öffnen Organisationsmenü schließen
Friedrich-Alexander-Universität Lehrstuhl für Informatik 4 (Systemsoftware)
  • FAUZur zentralen FAU Website
  1. Friedrich-Alexander-Universität
  2. Technische Fakultät
  3. Department Informatik
Suche öffnen
  • English
  • Campo
  • StudOn
  • FAUdir
  • Stellenangebote
  • Lageplan
  • Hilfe im Notfall
  1. Friedrich-Alexander-Universität
  2. Technische Fakultät
  3. Department Informatik
Friedrich-Alexander-Universität Lehrstuhl für Informatik 4 (Systemsoftware)
Menu Menu schließen
  • Lehrstuhl
    • Team
    • Aktuelles
    • Kontakt und Anfahrt
    • Leitbild
    • 50-jähriges Jubiläum
    Portal Lehrstuhl
  • Forschung
    • Forschungsbereiche
      • Betriebssysteme
      • Confidential Computing
      • Embedded Systems Software
      • Verteilte Systeme
    • Projekte
      • AIMBOS
      • BALu
      • BFT2Chain
      • DOSS
      • Mirador
      • NEON
      • PAVE
      • ResPECT
      • Watwa
    • Projektkampagnen
      • maRE
    • Seminar
      • Systemsoftware
    Portal Forschung
  • Publikationen
  • Lehre
    • Sommersemester 2025
      • Applied Software Architecture
      • Ausgewählte Kapitel der Systemsoftware
      • Betriebssystemtechnik
      • Projekt angewandte Systemsoftwaretechnik
      • System-Level Programming
      • Systemnahe Programmierung in C
      • Systemprogrammierung 1
      • Verteilte Systeme
    • Wintersemester 2025/26
      • Systemprogrammierung 2
      • Betriebssysteme
      • Middleware – Cloud Computing
      • Echtzeitsysteme
      • Virtuelle Maschinen
      • Web-basierte Systeme
      • Projekt angewandte Systemsoftwaretechnik
      • Aktuelle Entwicklung in Verteilten und Objektorientierten Betriebssystemen (für Bachelor-/Masterarbeit)
    Portal Lehre
  • Examensarbeiten
  1. Startseite
  2. Extern

Extern

Bereichsnavigation: Lehre
  • Betriebssysteme
    • Vorlesung
      • Folien
    • Übung
      • Seminar
      • Aufgaben
      • Aufgabe 0: C++ Streams
        • Aufgabe 1: Ein-/Ausgabe
          • Aufgabe 2: Unterbrechungen
            • Aufgabe 3: Pro-/Epilog
              • Aufgabe 4: Kontextwechsel
                • Assembler Crashkurs
                  • C++ Crashkurs
                    • Entwicklungsumgebung
                      • FAQ
                        • Ruhmeshalle

                      Aufgabe 2: Unterbrechungen

                      Public Member Functions | Public Attributes | List of all members
                      Mouse Class Reference
                      I/O subsystem

                      Handles mouse movements and clicks. More...

                      #include <device/mouse.h>

                      + Inheritance diagram for Mouse:
                      [legend]
                      + Collaboration diagram for Mouse:
                      [legend]

                      Public Member Functions

                       Mouse (unsigned max_x, unsigned max_y)
                       Constructor. More...
                       
                      void getPos (unsigned &x, unsigned &y) const
                       Retrieve the current mouse position. More...
                       
                      bool isPressed (MouseButton btn) const
                       Check if a given mouse button is pressed. More...
                       
                      void plugin ()
                       Initialization of the mouse. More...
                       
                      void trigger ()
                       Handling of mouse interrupts. More...
                       
                      - Public Member Functions inherited from Gate
                       Gate ()
                       Constructor.
                       
                      virtual ~Gate ()
                       Destructor. More...
                       
                      virtual void trigger ()=0
                       Device-specific interrupt handler. More...
                       

                      Public Attributes

                      const unsigned MAX_X
                       Maximum X position of the mouse.
                       
                      const unsigned MAX_Y
                       Maximum Y position of the mouse.
                       

                      Detailed Description

                      Handles mouse movements and clicks.

                      This class ensures correct initialization of the mouse and, above all, its interrupt handling.

                      Constructor & Destructor Documentation

                      Mouse::Mouse ( unsigned  max_x,
                      unsigned  max_y 
                      )
                      inlineexplicit

                      Constructor.

                      Defines a virtual window for the mouse.

                      Parameters
                      max_xMaximum X position (excluding) for the mouse
                      max_yMaximum Y position (excluding) for the mouse

                      Member Function Documentation

                      void Mouse::getPos ( unsigned &  x,
                      unsigned &  y 
                      ) const
                      inline

                      Retrieve the current mouse position.

                      Parameters
                      xReference to variable for the X position (0 ≤ x < MAX_X) of the mouse
                      yReference to variable for the Y position (0 ≤ y < MAX_Y) of the mouse
                      Optional:
                      Implement method
                      bool Mouse::isPressed ( MouseButton  btn) const
                      inline

                      Check if a given mouse button is pressed.

                      Parameters
                      btnButton to check for press
                      Returns
                      true if button is currently pressed
                      Optional:
                      Implement method
                      void Mouse::plugin ( )

                      Initialization of the mouse.

                      Initialization of the mouse and activation of the specific interrupt handling: The object will register itself at the Plugbox and configure the IOAPIC to receive the corresponding interrupts.

                      Note
                      The mouse interrupts should be configured as level triggered.
                      Optional:
                      Implement method
                      void Mouse::trigger ( )
                      virtual

                      Handling of mouse interrupts.

                      Processes interrupts triggered by the mouse.

                      Optional:
                      Implement Method

                      Implements Gate.


                      The documentation for this class was generated from the following files:
                      • device/mouse.h
                      • device/mouse.cc
                      Friedrich-Alexander-Universität
                      Erlangen-Nürnberg

                      Schlossplatz 4
                      91054 Erlangen
                      • Impressum
                      • Datenschutz
                      • Barrierefreiheit
                      • Facebook
                      • RSS Feed
                      • Xing
                      Nach oben