Otawa  0.10
otawa::Registry Class Reference

Class dedicated to the registering of the processors. More...

#include <otawa/proc/Registry.h>

Inheritance diagram for otawa::Registry:
elm::Initializer< AbstractRegistration >

Classes

class  Iter
 

Public Member Functions

void record (AbstractRegistration *object)
 
void startup (void)
 

Static Public Member Functions

static const AbstractRegistrationfind (CString name)
 Look for a processor matching the given name. More...
 

Private Types

typedef genstruct::HashTable
< String, const
AbstractRegistration * > 
htab_t
 

Private Member Functions

 Registry (void)
 To ensure that no other registry is built. More...
 

Private Attributes

htab_t procs
 

Static Private Attributes

static Registry _
 Default registry. More...
 

Friends

class AbstractRegistration
 

Detailed Description

Class dedicated to the registering of the processors.

A registration contains:

  • name and version of the processor,
  • list of configuration identifiers,
  • list of the used features (provided, required, invalidated).

The registration may be used to write processor scripts or for GUI to provide list of processors to the user.

Member Typedef Documentation

Constructor & Destructor Documentation

otawa::Registry::Registry ( void  )
private

To ensure that no other registry is built.

References elm::Initializer< AbstractRegistration >::startup().

Member Function Documentation

const AbstractRegistration * otawa::Registry::find ( CString  name)
static

Look for a processor matching the given name.

Parameters
nameName of the processor to look for.
Returns
Found processor or null.

References _, elm::genstruct::HashTable< K, T, H >::get(), and procs.

Referenced by otawa::ProcessorPlugin::getProcessor().

void elm::Initializer< AbstractRegistration >::record ( AbstractRegistration *  object)
inherited
void elm::Initializer< AbstractRegistration >::startup ( void  )
inherited

Referenced by Registry().

Friends And Related Function Documentation

friend class AbstractRegistration
friend

Member Data Documentation

Registry otawa::Registry::_
staticprivate
htab_t otawa::Registry::procs
private

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