Cat
Public Member Functions | Private Attributes | List of all members
ProcDataBase Class Reference

#include <inc/ProcDataBase.h>

Public Member Functions

 ProcDataBase ()
 Standard constructor. More...
 
virtual ~ProcDataBase ()
 Destructor. More...
 
void update ()
 
std::list< Processus *> procList (Element *)
 
std::vector< Processus * > list (Element *)
 
std::vector< Processus * > list ()
 
Processusprocessus (std::string)
 
StatusCode add (Processus *)
 
StatusCode remove (Processus *)
 

Private Attributes

std::list< Processus *> m_procList
 
std::list< std::string > m_types
 

Detailed Description

Author
Frederic Machefert
Date
2005-01-03

Definition at line 20 of file ProcDataBase.h.

Constructor & Destructor Documentation

◆ ProcDataBase()

ProcDataBase::ProcDataBase ( )

Standard constructor.

Definition at line 25 of file ProcDataBase.cpp.

References application(), and Object::info().

25  {
26  application()->info("Building Processus DataBase.","ProcDataBase");
27 }
void info(std::string mymsg)
Definition: Object.h:38
Application * application()
Definition: Tools.cpp:42

◆ ~ProcDataBase()

ProcDataBase::~ProcDataBase ( )
virtual

Destructor.

Definition at line 32 of file ProcDataBase.cpp.

32  {
33 }

Member Function Documentation

◆ add()

StatusCode ProcDataBase::add ( Processus proc)

Definition at line 101 of file ProcDataBase.cpp.

References m_procList, StatusCode::SUCCESS, and update().

Referenced by Computer::Computer(), and DLL::init().

101  {
102  m_procList.push_back ( proc );
103  update();
104  return StatusCode::SUCCESS;
105 }
std::list< Processus *> m_procList
Definition: ProcDataBase.h:55

◆ list() [1/2]

std::vector< Processus * > ProcDataBase::list ( Element element)

Definition at line 63 of file ProcDataBase.cpp.

References list(), m_procList, and Object::type().

63  {
64  std::vector<Processus*> list;
65  std::list<Processus*>::const_iterator iter;
66  for (iter=m_procList.begin();iter!=m_procList.end();++iter){
67  if ( (*iter)->type().compare( element->type() )==0 ){
68  list.push_back( *iter );
69  }
70  }
71  return list;
72 }
std::vector< Processus * > list()
std::list< Processus *> m_procList
Definition: ProcDataBase.h:55
std::string type()
Definition: Object.h:29

◆ list() [2/2]

std::vector< Processus * > ProcDataBase::list ( )

Definition at line 76 of file ProcDataBase.cpp.

References m_procList.

Referenced by export_base(), export_proc(), list(), and procList().

76  {
77  std::vector<Processus*> list;
78  std::list<Processus*>::const_iterator iter;
79  for (iter=m_procList.begin();iter!=m_procList.end();++iter){
80  list.push_back( *iter );
81  }
82  return list;
83 }
std::vector< Processus * > list()
std::list< Processus *> m_procList
Definition: ProcDataBase.h:55

◆ processus()

Processus * ProcDataBase::processus ( std::string  procName)

Definition at line 88 of file ProcDataBase.cpp.

References m_procList.

Referenced by DLL::print().

88  {
89  std::list< Processus* >::const_iterator iter;
90  for (iter=m_procList.begin();iter!=m_procList.end();++iter){
91  if ( (*iter)->name().compare(procName) == 0 ) {
92  return (*iter);
93  }
94  }
95  return NULL;
96 }
std::list< Processus *> m_procList
Definition: ProcDataBase.h:55

◆ procList()

std::list< Processus * > ProcDataBase::procList ( Element element)

Definition at line 49 of file ProcDataBase.cpp.

References list(), m_procList, and Object::type().

Referenced by Application::prepare(), and Application::setConfig().

49  {
50  std::list<Processus*> list;
51  std::list<Processus*>::const_iterator iter;
52  for (iter=m_procList.begin();iter!=m_procList.end();++iter){
53  if ( (*iter)->type().compare( element->type() )==0 ){
54  list.push_back( *iter );
55  }
56  }
57  return list;
58 }
std::vector< Processus * > list()
std::list< Processus *> m_procList
Definition: ProcDataBase.h:55
std::string type()
Definition: Object.h:29

◆ remove()

StatusCode ProcDataBase::remove ( Processus proc)

Erase a processus to the db

Definition at line 110 of file ProcDataBase.cpp.

References m_procList, and StatusCode::SUCCESS.

Referenced by Computer::~Computer().

110  {
111  m_procList.remove( proc );
112  return StatusCode::SUCCESS;
113 }
std::list< Processus *> m_procList
Definition: ProcDataBase.h:55

◆ update()

void ProcDataBase::update ( )

Definition at line 38 of file ProcDataBase.cpp.

References m_procList, and m_types.

Referenced by add(), AppFrame.AppFrame::deleteHardware(), ConfFrame.ConfFrame::onChange(), GraphFrame.GraphFrame::onChange(), CfgFrame.CfgFrame::onChange(), ConfFrame.ConfFrame::onEdit(), AppFrame.AppFrame::onLoad(), ConfFrame.ConfFrame::onReLoad(), GraphFrame.GraphFrame::onReLoad(), CfgFrame.CfgFrame::onReLoad(), and AppFrame.AppFrame::onReLoad().

38  {
39  std::list<Processus*>::const_iterator iter;
40  for (iter=m_procList.begin();iter!=m_procList.end();++iter){
41  m_types.push_back( (*iter)->type() );
42  }
43  m_types.unique();
44 }
std::list< Processus *> m_procList
Definition: ProcDataBase.h:55
std::list< std::string > m_types
Definition: ProcDataBase.h:56

Member Data Documentation

◆ m_procList

std::list< Processus* > ProcDataBase::m_procList
private

Definition at line 55 of file ProcDataBase.h.

Referenced by add(), list(), processus(), procList(), remove(), and update().

◆ m_types

std::list< std::string > ProcDataBase::m_types
private

Definition at line 56 of file ProcDataBase.h.

Referenced by update().


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