#include <ExerciseManager.h>
Öffentliche Methoden | |
ExerciseManager (const std::string &filename) | |
Konstruktor aus Datei. | |
ExerciseManager (const std::vector< std::string > &filenames) | |
Konstruktor aus Datei-Liste. | |
ExerciseManager (const CatalogList &catalogs) | |
Konstruktor aus Katalog-Info-Liste. | |
ExerciseManager (QuestionSource &qsource) | |
Konstruktor aus Fragen-Quelle. | |
const Question * | getQuestion () const |
Aktuelle Frage holen. | |
Result | setAnswer (const std::string &answer) |
Benutzerantwort verarbeiten. | |
bool | finished () |
Gibt an, ob die Übung beendet ist. | |
Geschützte Methoden | |
void | commonConstructor () |
Gemeinsamer Code aller Konstruktoren. | |
void | loadQuestions (QuestionSource &qsource) |
Alle Fragen einer Fragen-Quelle laden. | |
Geschützte Attribute | |
std::list< Question * > | m_questions |
Liste der Fragen. |
Der Übungsmanager verwaltet eine Übung, d. h. er entscheidet, welche Frage als nächste gestellt wird, und prüft die Antworten des Benutzers.
Folgende Vereinfachung werden vorgenommen:
Limiro::ExerciseManager::ExerciseManager | ( | const std::string & | filename | ) |
Konstruktor aus Datei.
Erstellt einen Aufgaben-Manager aus dem angegebenen Fragen-Katalog.
Benutzt Limiro::QuestionSource::addCatalog(), commonConstructor() und loadQuestions().
Limiro::ExerciseManager::ExerciseManager | ( | const std::vector< std::string > & | filenames | ) |
Konstruktor aus Datei-Liste.
Erstellt einen Aufgaben-Manager aus den angegebenen Fragen-Katalogen.
Benutzt Limiro::QuestionSource::addCatalog(), commonConstructor() und loadQuestions().
Limiro::ExerciseManager::ExerciseManager | ( | const CatalogList & | catalogs | ) |
Konstruktor aus Katalog-Info-Liste.
Erstellt einen Aufgaben-Manager aus den angegebenen Fragen-Katalogen.
Benutzt Limiro::QuestionSource::addCatalog(), commonConstructor() und loadQuestions().
Limiro::ExerciseManager::ExerciseManager | ( | QuestionSource & | qsource | ) |
Konstruktor aus Fragen-Quelle.
Erstellt einen Aufgaben-Manager aus der übergebenen Fragen-Quelle.
Benutzt commonConstructor() und loadQuestions().
const Question * Limiro::ExerciseManager::getQuestion | ( | ) | const |
Aktuelle Frage holen.
Liefert die momentan zu beantwortende Frage zurück, dabei wird der Zustand des Übungsmanagers nicht verändert.
Benutzt m_questions.
Result Limiro::ExerciseManager::setAnswer | ( | const std::string & | answer | ) |
Benutzerantwort verarbeiten.
Überprüft die Benutzerantwort, und leitet die nötigen weiteren Schritte ein.
answer | Eingegebene Antwort |
Benutzt Limiro::Question::checkAnswer(), Limiro::Result::correct und m_questions.
void Limiro::ExerciseManager::commonConstructor | ( | ) | [protected] |
Gemeinsamer Code aller Konstruktoren.
Wird benutzt von ExerciseManager().