|
INET Framework for OMNeT++/OMNEST
|
#include <AnsaQosClassifiers.h>
Public Member Functions | |
| ACLClassifier (cXMLElement &clsfrConfig) | |
| virtual bool | classifyPacket (cMessage *msg) |
| virtual std::string | info () |
Private Attributes | |
| std::vector< std::string > | acls |
| AclContainer * | aclAccess |
| std::string | infoString |
Definition at line 90 of file AnsaQosClassifiers.h.
| ANSAQOS::ACLClassifier::ACLClassifier | ( | cXMLElement & | clsfrConfig | ) |
Definition at line 144 of file AnsaQosClassifiers.cc.
{
/* Ziska pristup do ACL kontajneru smerovaca */
aclAccess = AclContainerAccess().get();
/* Do retazca uklada informacie pre graficke rozhranie */
infoString = "ACL:=";
/* Prechadzanie elementov XML konfiguracie */
cXMLElementList aclDetails = clsfrConfig.getChildren();
for (cXMLElementList::iterator aclElemIt = aclDetails.begin(); aclElemIt != aclDetails.end(); ++aclElemIt)
{
std::string nodeName = (*aclElemIt)->getTagName();
if (nodeName == "acl")
{
std::string aclname = (*aclElemIt)->getNodeValue();
if (aclname.length() > 0 )
{
acls.push_back(aclname);
infoString += " ";
infoString += aclname;
if(!aclAccess->existAcl(aclname))
infoString += " (not defined)";
}
}
}
}
| bool ANSAQOS::ACLClassifier::classifyPacket | ( | cMessage * | msg | ) | [virtual] |
Implements ANSAQOS::Classifier.
Definition at line 180 of file AnsaQosClassifiers.cc.
{
std::vector<std::string>::iterator it;
for(it = acls.begin(); it != acls.end(); ++it )
{
if (aclAccess->matchPacketToAcl(*it, msg))
return true;
}
return false;
}
| virtual std::string ANSAQOS::ACLClassifier::info | ( | ) | [inline, virtual] |
Implements ANSAQOS::Classifier.
Definition at line 99 of file AnsaQosClassifiers.h.
{return infoString;}
AclContainer* ANSAQOS::ACLClassifier::aclAccess [private] |
Definition at line 94 of file AnsaQosClassifiers.h.
std::vector<std::string> ANSAQOS::ACLClassifier::acls [private] |
Definition at line 93 of file AnsaQosClassifiers.h.
std::string ANSAQOS::ACLClassifier::infoString [private] |
Definition at line 95 of file AnsaQosClassifiers.h.
Referenced by info().