|
INET Framework for OMNeT++/OMNEST
|
#include <ansaLsa6.h>
Public Member Functions | |
| InterAreaPrefixLsa (void) | |
| InterAreaPrefixLsa (const OspfInterAreaPrefixLsa6 &lsa) | |
| InterAreaPrefixLsa (const InterAreaPrefixLsa &lsa) | |
| virtual | ~InterAreaPrefixLsa (void) |
| bool | Update (const OspfInterAreaPrefixLsa6 *lsa) |
| bool | DiffersFrom (const OspfInterAreaPrefixLsa6 *interAreaPrefixLsa) const |
Definition at line 107 of file ansaLsa6.h.
| AnsaOspf6::InterAreaPrefixLsa::InterAreaPrefixLsa | ( | void | ) | [inline] |
Definition at line 112 of file ansaLsa6.h.
: OspfInterAreaPrefixLsa6(), RoutingInfo(), LsaTrackingInfo() {}
| AnsaOspf6::InterAreaPrefixLsa::InterAreaPrefixLsa | ( | const OspfInterAreaPrefixLsa6 & | lsa | ) | [inline] |
Definition at line 113 of file ansaLsa6.h.
: OspfInterAreaPrefixLsa6(lsa), RoutingInfo(), LsaTrackingInfo() {}
| AnsaOspf6::InterAreaPrefixLsa::InterAreaPrefixLsa | ( | const InterAreaPrefixLsa & | lsa | ) | [inline] |
Definition at line 114 of file ansaLsa6.h.
: OspfInterAreaPrefixLsa6(lsa), RoutingInfo(lsa), LsaTrackingInfo(lsa) {}
| virtual AnsaOspf6::InterAreaPrefixLsa::~InterAreaPrefixLsa | ( | void | ) | [inline, virtual] |
Definition at line 115 of file ansaLsa6.h.
{}
| bool AnsaOspf6::InterAreaPrefixLsa::DiffersFrom | ( | const OspfInterAreaPrefixLsa6 * | interAreaPrefixLsa | ) | const |
Definition at line 30 of file ansaLsa6Type3InterAreaPrefix.cc.
Referenced by Update().
{
const OspfLsaHeader6& lsaHeader = interAreaPrefixLsa->getHeader();
if (((header_var.getLsAge() == MAX_AGE) && (lsaHeader.getLsAge() != MAX_AGE))
|| ((header_var.getLsAge() != MAX_AGE) && (lsaHeader.getLsAge() == MAX_AGE))
|| (header_var.getAdvertisingRouter() != lsaHeader.getAdvertisingRouter())
|| (header_var.getLsSequenceNumber() != lsaHeader.getLsSequenceNumber())){
return true;
}else if (metric_var != interAreaPrefixLsa->getMetric()){
return true;
}else if (prefixLenght_var != interAreaPrefixLsa->getPrefixLenght()){
return true;
}else if (prefixOptions_var != interAreaPrefixLsa->getPrefixOptions()){
return true;
}else if (addressPrefix_var != interAreaPrefixLsa->getAddressPrefix()){
return true;
}
return false;
}
| bool AnsaOspf6::InterAreaPrefixLsa::Update | ( | const OspfInterAreaPrefixLsa6 * | lsa | ) |
Definition at line 18 of file ansaLsa6Type3InterAreaPrefix.cc.
{
bool different = DiffersFrom(lsa);
(*this) = (*lsa);
ResetInstallTime();
if (different){
ClearNextHops();
return true;
}else{
return false;
}
}