RSVPResvMsg.h

Go to the documentation of this file.
00001 //
00002 // (C) 2005 Vojtech Janota
00003 // (C) 2003 Xuan Thang Nguyen
00004 //
00005 // This library is free software, you can redistribute it
00006 // and/or modify
00007 // it under  the terms of the GNU Lesser General Public License
00008 // as published by the Free Software Foundation;
00009 // either version 2 of the License, or any later version.
00010 // The library is distributed in the hope that it will be useful,
00011 // but WITHOUT ANY WARRANTY; without even the implied warranty of
00012 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
00013 // See the GNU Lesser General Public License for more details.
00014 //
00015 
00016 #ifndef __INET_RSVPRESVMSG_H
00017 #define __INET_RSVPRESVMSG_H
00018 
00019 #include "RSVPResvMsg_m.h"
00020 
00021 
00028 class RSVPResvMsg : public RSVPResvMsg_Base
00029 {
00030   public:
00031     RSVPResvMsg(const char *name=NULL, int kind=RESV_MESSAGE) : RSVPResvMsg_Base(name,kind) {}
00032     RSVPResvMsg(const RSVPResvMsg& other) : RSVPResvMsg_Base(other.getName()) {operator=(other);}
00033     RSVPResvMsg& operator=(const RSVPResvMsg& other) {RSVPResvMsg_Base::operator=(other); return *this;}
00034     virtual RSVPResvMsg *dup() const {return new RSVPResvMsg(*this);}
00035 
00036     inline IPAddress getNHOP() {return getHop().Next_Hop_Address;}
00037     inline IPAddress getLIH() {return getHop().Logical_Interface_Handle;}
00038 };
00039 
00040 
00047 class RSVPResvTear : public RSVPResvTear_Base
00048 {
00049   public:
00050     RSVPResvTear(const char *name=NULL, int kind=RTEAR_MESSAGE) : RSVPResvTear_Base(name,kind) {}
00051     RSVPResvTear(const RSVPResvTear& other) : RSVPResvTear_Base(other.getName()) {operator=(other);}
00052     RSVPResvTear& operator=(const RSVPResvTear& other) {RSVPResvTear_Base::operator=(other); return *this;}
00053     virtual RSVPResvTear *dup() const {return new RSVPResvTear(*this);}
00054 
00055     inline IPAddress getNHOP() {return getHop().Next_Hop_Address;}
00056     inline IPAddress getLIH() {return getHop().Logical_Interface_Handle;}
00057 };
00058 
00059 
00066 class RSVPResvError : public RSVPResvError_Base
00067 {
00068   public:
00069     RSVPResvError(const char *name=NULL, int kind=RERROR_MESSAGE) : RSVPResvError_Base(name,kind) {}
00070     RSVPResvError(const RSVPResvError& other) : RSVPResvError_Base(other.getName()) {operator=(other);}
00071     RSVPResvError& operator=(const RSVPResvError& other) {RSVPResvError_Base::operator=(other); return *this;}
00072     virtual RSVPResvError *dup() const {return new RSVPResvError(*this);}
00073 
00074     inline IPAddress getNHOP() {return getHop().Next_Hop_Address;}
00075     inline IPAddress getLIH() {return getHop().Logical_Interface_Handle;}
00076 };
00077 
00078 #endif
00079 
00080 
00081