Quick links: Tutorial - Examples - Files - Symbols.
Classes: Hierarchy - Index - List - Members.
Namespaces: Index - base - cs - display.

Public Member Functions | List of all members
cogitant::ObserverStream Class Reference

Un observateur qui envoie sur un flux de sortie tous les messages qu'il reçoit. More...

#include "cogitant/observer.h"

Inheritance diagram for cogitant::ObserverStream:
cogitant::Observer

Public Member Functions

 ObserverStream (std::ostream &os)
 Constructeur. More...
 
void messageAttached (ObservableObject *obo)
 Méthode appelée quand l'observateur est attaché à un objet observable. More...
 
void messageDetached ()
 Méthode appelée quand l'observateur est détaché d'un objet observable. More...
 
void message (ObserverMessage const *msg)
 Méthode appelée quand l'état de l'objet observé a été modifié. More...
 
bool wantsMessage (ObserverMessage::Type mt) const
 Est-ce que le type de message est géré par l'observateur. More...
 
- Public Member Functions inherited from cogitant::Observer
 Observer ()
 Constructeur. More...
 
virtual ~Observer ()
 Destructeur. More...
 
bool isAttached () const
 L'observateur est-il relié à un objet observable. More...
 
virtual bool deletedWithObservable () const
 L'observateur doit-il être détruit quand l'objet observé est détruit. More...
 

Detailed Description

Un observateur qui envoie sur un flux de sortie tous les messages qu'il reçoit.

Cette classe peut être utilisée à des fins de débogage afin de visualiser facilement tous les messages qui sont produits par un ObservableObject.

Examples:
converter.cpp.

Constructor & Destructor Documentation

◆ ObserverStream()

cogitant::ObserverStream::ObserverStream ( std::ostream &  os)

Constructeur.

Member Function Documentation

◆ message()

void cogitant::ObserverStream::message ( ObserverMessage const *  msg)
virtual

Méthode appelée quand l'état de l'objet observé a été modifié.

Par défaut, cette méthode n'effectue aucun traitement.

Parameters
msgmessage décrivant le changement.

Reimplemented from cogitant::Observer.

◆ messageAttached()

void cogitant::ObserverStream::messageAttached ( ObservableObject obo)
virtual

Méthode appelée quand l'observateur est attaché à un objet observable.

Par défaut, se contente de modifier la valeur de m_attached. Si la méthode est redéfinie dans les sous-classes, la super-méthode doit être appelée afin de mettre à jour m_attached.

Parameters
obopointeur sur l'objet observé.

Reimplemented from cogitant::Observer.

◆ messageDetached()

void cogitant::ObserverStream::messageDetached ( )
virtual

Méthode appelée quand l'observateur est détaché d'un objet observable.

Par défaut, se contente de modifier la valeur de m_attached. Si la méthode est redéfinie dans les sous-classes, la super-méthode doit être appelée afin de mettre à jour m_attached.

Warning
Cette méthode n'est pas obligatoirement appelée : Dans le cas où un ObservableObject est détruit alors que des observateurs sont liés à lui, les observateurs en question sont détruits sans être au préalablement détachés.

Reimplemented from cogitant::Observer.

◆ wantsMessage()

bool cogitant::ObserverStream::wantsMessage ( ObserverMessage::Type  mt) const
virtual

Est-ce que le type de message est géré par l'observateur.

Parameters
mttype de message.
Returns
true ssi l'observateur désire recevoir des messages de type mt.
Warning
Une instance d'observateur doit toujours retourner la même valeur pour un mt donné : Pendant la durée de vie d'observateur, celui-ci doit toujours retourner les mêmes valeurs.

Reimplemented from cogitant::Observer.