DiaDes  0.1
DIAgnosis of Discrete-Event System
Public Types | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
Diades::Automata::Diagnosis Class Reference

#include <Diagnosis.hh>

Public Types

typedef Diades::Utils::Exception< DiagnosisException
 
typedef set< Candidate >::size_type SizeType
 
typedef set< Candidate >::const_iterator CandidateIterator
 
typedef list< vector< Candidate::StateId > >::const_iterator StateIdIterator
 
typedef set< set< Event > >::const_iterator FaultCandidateIterator
 
typedef Candidate::StateId StateId
 
typedef vector< unordered_map< StateId, unordered_set< StateId > > > Dict
 

Public Member Functions

 Diagnosis ()
 
 Diagnosis (const Diagnosis &diagnosis)
 
 Diagnosis (const Diagnosis &diagnosis, const Dict &dict)
 
void addCandidate (const Candidate &candidate)
 
void deleteCandidate (const Candidate &candidate)
 
SizeType numberOfCandidates () const
 
CandidateIterator begin () const
 
CandidateIterator end () const
 
SizeType bsSize () const
 
StateIdIterator bsBegin () const
 
StateIdIterator bsEnd () const
 
FaultCandidateIterator fcBegin () const
 
FaultCandidateIterator fcEnd () const
 
bool operator== (const Diagnosis &diag) const
 
bool operator!= (const Diagnosis &diag) const
 
void clear ()
 

Static Public Member Functions

static string typeName ()
 

Private Member Functions

template<class Archive >
void serialize (Archive &ar, const unsigned int version)
 

Private Attributes

set< Candidate_candidates
 
list< vector< Candidate::StateId > > _bs
 
set< set< Event > > _faults
 

Friends

class boost::serialization::access
 
ostream & operator<< (ostream &os, const Diagnosis &diagnosis)
 

Detailed Description

A Diagnosis is a set of Candidate object. This class provides some facilities to serialise the Diagnosis for further analyses. It is used by the class History. The main purpose of this class is to capture results sent by diagnostic algorithms for further analyses (size of the belief states, size of the fault candidates,.....)

Definition at line 41 of file Diagnosis.hh.

Member Typedef Documentation

◆ CandidateIterator

Diagnosis::CandidateIterator iterator on candidates

Definition at line 56 of file Diagnosis.hh.

◆ Dict

typedef vector< unordered_map<StateId,unordered_set<StateId> > > Diades::Automata::Diagnosis::Dict

Definition at line 83 of file Diagnosis.hh.

◆ Exception

Definition at line 46 of file Diagnosis.hh.

◆ FaultCandidateIterator

typedef set< set<Event> >::const_iterator Diades::Automata::Diagnosis::FaultCandidateIterator

Diagnosis::FaultCandidateIterator iterator on the fault candidates

Definition at line 64 of file Diagnosis.hh.

◆ SizeType

Diagnosis::SizeType type encoding the number of Candidate objects in this Diagnosis

Definition at line 52 of file Diagnosis.hh.

◆ StateId

Definition at line 82 of file Diagnosis.hh.

◆ StateIdIterator

typedef list< vector< Candidate::StateId > >::const_iterator Diades::Automata::Diagnosis::StateIdIterator

Diagnosis::StateIdIterator iterator on state ids

Definition at line 60 of file Diagnosis.hh.

Constructor & Destructor Documentation

◆ Diagnosis() [1/3]

Diades::Automata::Diagnosis::Diagnosis ( )
inline

Default constructor: empty Diagnosis

Definition at line 74 of file Diagnosis.hh.

◆ Diagnosis() [2/3]

Diades::Automata::Diagnosis::Diagnosis ( const Diagnosis diagnosis)
inline

Copy constructor

Parameters
diagnosisthe Diagnosis to copy

Definition at line 81 of file Diagnosis.hh.

◆ Diagnosis() [3/3]

Diades::Automata::Diagnosis::Diagnosis ( const Diagnosis diagnosis,
const Dict dict 
)

Copy constructor with expansion (remove state abstraction)

Parameters
diagnosisthe Diagnosis to copy

Member Function Documentation

◆ addCandidate()

void Diades::Automata::Diagnosis::addCandidate ( const Candidate candidate)

◆ begin()

CandidateIterator Diades::Automata::Diagnosis::begin ( ) const
inline

Iterator on Candidate objects

Returns
an iterator on the first Candidate

Definition at line 124 of file Diagnosis.hh.

Referenced by Diades::Automata::Distance::operator()(), and Diades::Automata::Accuracy::operator()().

◆ bsBegin()

StateIdIterator Diades::Automata::Diagnosis::bsBegin ( ) const
inline

Belief State Iterator

Returns
an iterator on the first state of the belief state

Definition at line 148 of file Diagnosis.hh.

Referenced by Diades::Automata::BsDistance::operator()(), Diades::Automata::BsAccuracy::operator()(), and Diades::Automata::BsPrecision::operator()().

◆ bsEnd()

StateIdIterator Diades::Automata::Diagnosis::bsEnd ( ) const
inline

Belief State Iterator

Returns
an iterator on the element after the last state of the belief state

Definition at line 157 of file Diagnosis.hh.

Referenced by Diades::Automata::BsDistance::operator()(), Diades::Automata::BsAccuracy::operator()(), and Diades::Automata::BsPrecision::operator()().

◆ bsSize()

SizeType Diades::Automata::Diagnosis::bsSize ( ) const
inline
Returns
the size of the underlying beleif states

Definition at line 140 of file Diagnosis.hh.

◆ clear()

void Diades::Automata::Diagnosis::clear ( )

◆ deleteCandidate()

void Diades::Automata::Diagnosis::deleteCandidate ( const Candidate candidate)

Remove a Candidate

Parameters
candidatethe Candidate to remove
update the internal strctures to belief states and faut candidates consistent
with this deletion

◆ end()

CandidateIterator Diades::Automata::Diagnosis::end ( ) const
inline

Iterator on Candidate objects

Returns
an iterator on the element after the last Candidate

Definition at line 132 of file Diagnosis.hh.

Referenced by Diades::Automata::Distance::operator()(), and Diades::Automata::Accuracy::operator()().

◆ fcBegin()

FaultCandidateIterator Diades::Automata::Diagnosis::fcBegin ( ) const
inline

◆ fcEnd()

FaultCandidateIterator Diades::Automata::Diagnosis::fcEnd ( ) const
inline

Fault candidate iterator

Returns
an iterator on the element after the last fault candidate (set of faults)

Definition at line 174 of file Diagnosis.hh.

Referenced by Diades::Automata::FcDistance::operator()(), Diades::Automata::CommonFaults::operator()(), Diades::Automata::NonCommonFaults::operator()(), Diades::Automata::FcAccuracy::operator()(), and Diades::Automata::FcPrecision::operator()().

◆ numberOfCandidates()

SizeType Diades::Automata::Diagnosis::numberOfCandidates ( ) const
inline
Returns
number of candidates

Definition at line 116 of file Diagnosis.hh.

Referenced by Diades::Automata::Accuracy::operator()(), and Diades::Automata::Precision::operator()().

◆ operator!=()

bool Diades::Automata::Diagnosis::operator!= ( const Diagnosis diag) const
inline

Difference operator (value difference linear in the number of candidates)

Parameters
diag
Returns
true if both Diagnosis objects are different

Definition at line 196 of file Diagnosis.hh.

References _candidates, and Diades::Utils::operator<<().

◆ operator==()

bool Diades::Automata::Diagnosis::operator== ( const Diagnosis diag) const
inline

Equality operator (value equality linear in the number of candidates)

Parameters
diag
Returns
true if both Diagnosis objects are equal

Definition at line 183 of file Diagnosis.hh.

References _candidates.

◆ serialize()

template<class Archive >
void Diades::Automata::Diagnosis::serialize ( Archive &  ar,
const unsigned int  version 
)
inlineprivate

Serialisation method

Parameters
arthe Archive to use
versionthe version
See also
http://www.boost.org/doc/libs/1_47_0/libs/serialization/doc/index.html

Definition at line 230 of file Diagnosis.hh.

◆ typeName()

static string Diades::Automata::Diagnosis::typeName ( )
inlinestatic

Definition at line 45 of file Diagnosis.hh.

Friends And Related Function Documentation

◆ boost::serialization::access

friend class boost::serialization::access
friend

Definition at line 219 of file Diagnosis.hh.

◆ operator<<

ostream& operator<< ( ostream &  os,
const Diagnosis diagnosis 
)
friend

Output stream operator

Parameters
osoutput stream
diagnosisthe Diagnosis to print
Returns
the update output stream

Member Data Documentation

◆ _bs

list< vector<Candidate::StateId> > Diades::Automata::Diagnosis::_bs
private

Definition at line 67 of file Diagnosis.hh.

◆ _candidates

set<Candidate> Diades::Automata::Diagnosis::_candidates
private

Definition at line 66 of file Diagnosis.hh.

Referenced by operator!=(), and operator==().

◆ _faults

set< set<Event> > Diades::Automata::Diagnosis::_faults
private

Definition at line 68 of file Diagnosis.hh.


The documentation for this class was generated from the following file: