This object will be constructed based on per SCS version basis. Thus every SCS version object will have a matching tree object ready for matching the incoming used services. This object will only be used in the ScsVersion::match() function.
Definition at line 176 of file serviceclass.h.
typedef std::list<Leaf> OSB_LIB::MatchingTree::Leaves [private] |
void OSB_LIB::MatchingTree::addService | ( | Leaves & | leaves, | |
ServiceElements | ses, | |||
const RatedService::Oid & | rsId | |||
) | [private] |
Recursivly add a rated service to the tree.
leaves | List on which to add ses. | |
ses | Copy of the service elements to add. | |
rsId | The rated service valid for the last element in ses. |
void OSB_LIB::MatchingTree::addService | ( | const RatedService & | rs | ) |
Add a rated service to the tree.
rs | Rated service to add. |
const RatedService::Oid OSB_LIB::MatchingTree::match | ( | const Leaves & | leaves, | |
ServiceElements | ses | |||
) | const [private] |
Recursivly determine the rated service from service elements.
leaves | List of service elements that are matched against the frist element in ses. | |
ses | Copy of the service elements to match. |
const RatedService::Oid OSB_LIB::MatchingTree::match | ( | const ServiceTuple & | st | ) | const |
Determine the rated service for a service tuple.
st | The service tuple to be matched. |
void OSB_LIB::MatchingTree::populate | ( | const ScsVersion & | scsVs | ) |
populate the Matching tree.
scsVs | The SCS version for which to build up the matching tree. |
void OSB_LIB::MatchingTree::swap | ( | MatchingTree & | rhs | ) |
Swap the content of two matching tree.
rhs | Matching tree that is to be swap. |
Leaves OSB_LIB::MatchingTree::leaves_ [private] |