CLAM-Development
1.4.0
|
The description scheme defines the set of attributes (Attribute) to be used for feature extraction systems. More...
#include <DescriptionScheme.hxx>
Public Member Functions | |
DescriptionScheme () | |
~DescriptionScheme () | |
template<typename DataType > | |
void | AddAttribute (const std::string &scope, const std::string &name) |
Adds a new attribute to the description scheme. | |
DescriptionScope & | SearchScopeOrAdd (const std::string scopeName) |
unsigned | GetScopeIndex (const std::string &name) const |
const DescriptionScope & | GetScope (unsigned scopeIndex) const |
const DescriptionScope & | GetScope (const std::string &name) const |
unsigned | GetNScopes () const |
const std::string & | GetScopeName (unsigned scopeIndex) const |
void | StoreOn (Storage &storage) const |
Stores component's subitems on the given Storage. | |
void | LoadFrom (Storage &storage) |
Loads component's subitems from the given Storage. | |
const char * | GetClassName () const |
Return the class name. | |
![]() | |
virtual | ~Component () |
virtual Component * | ShallowCopy () const |
virtual Component * | DeepCopy () const |
The description scheme defines the set of attributes (Attribute) to be used for feature extraction systems.
A DescriptionScheme is only an specification. The real data is held in a DescriptionDataPool, a container that fits its structure to the one defined on the DescriptionScheme specification.
Attributes in a DescriptionScheme have a name and a type and they are organized in scopes. Each scope (see DescriptionScope) defines a kind of target for the attributes: (note scope, sample scope, frame scope, phrase scope, sample scope...)
You can add Attributes to the DescriptionScheme by using the DescriptionScheme::AddAttribute method. The rest of the methods are utility for the pool classes.
Definition at line 61 of file DescriptionScheme.hxx.
|
inline |
Definition at line 70 of file DescriptionScheme.hxx.
CLAM::DescriptionScheme::~DescriptionScheme | ( | ) |
Definition at line 27 of file DescriptionScheme.cxx.
|
inline |
Adds a new attribute to the description scheme.
If the scope does not exist it will be added.
DataType | The type of the argument to be added |
scope | The scope where the attributes applies to |
name | The name for the attribute |
Definition at line 86 of file DescriptionScheme.hxx.
References SearchScopeOrAdd().
|
inlinevirtual |
Return the class name.
Implements CLAM::Component.
Definition at line 135 of file DescriptionScheme.hxx.
|
inline |
Definition at line 123 of file DescriptionScheme.hxx.
Referenced by StoreOn().
|
inline |
Definition at line 112 of file DescriptionScheme.hxx.
References CLAM_ASSERT.
Referenced by GetScope(), GetScopeName(), CLAM::DescriptionDataPool::InstantiateAttribute(), CLAM::DescriptionDataPool::LoadFrom(), CLAM::DescriptionDataPool::SetNumberOfContexts(), and StoreOn().
|
inline |
Definition at line 118 of file DescriptionScheme.hxx.
References GetScope(), and GetScopeIndex().
|
inline |
Definition at line 105 of file DescriptionScheme.hxx.
References CLAM_ASSERT.
Referenced by CLAM::DescriptionDataPool::GetNumberOfContexts(), CLAM::DescriptionDataPool::GetReadPool(), GetScope(), CLAM::DescriptionDataPool::GetWritePool(), CLAM::DescriptionDataPool::Insert(), CLAM::DescriptionDataPool::InstantiateAttribute(), CLAM::DescriptionDataPool::IsInstantiated(), CLAM::DescriptionDataPool::Remove(), and CLAM::DescriptionDataPool::SetNumberOfContexts().
|
inline |
Definition at line 128 of file DescriptionScheme.hxx.
References CLAM::DescriptionScope::GetName(), and GetScope().
|
virtual |
Loads component's subitems from the given Storage.
storage | The given storage where the subitem will be loaded from |
Implements CLAM::Component.
Definition at line 81 of file DescriptionScheme.cxx.
References CLAM::Storage::Load().
|
inline |
Definition at line 92 of file DescriptionScheme.hxx.
Referenced by AddAttribute().
|
virtual |
Stores component's subitems on the given Storage.
storage | The given storage where the subitem will be stored |
Implements CLAM::Component.
Definition at line 68 of file DescriptionScheme.cxx.
References CLAM::DescriptionScope::GetAttribute(), CLAM::DescriptionScope::GetNAttributes(), GetNScopes(), GetScope(), and CLAM::Storage::Store().