\hypertarget{classIPvXNet}{
\section{IPvXNet Class Reference}
\label{classIPvXNet}\index{IPvXNet@{IPvXNet}}
}


\hyperlink{classIPvXNet}{IPvXNet} class.  




{\ttfamily \#include $<$ipvxnet.hh$>$}

Inheritance diagram for IPvXNet:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.000000cm]{classIPvXNet}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{classIPvXNet_ac407b83fe991aca157b6898d00506c4f}{IPvXNet} (int family)  throw (InvalidFamily)
\begin{DoxyCompactList}\small\item\em Constructor for a specified address family. \item\end{DoxyCompactList}\item 
\hyperlink{classIPvXNet_a3ae13b98e94de0886f7a2b5224d28e61}{IPvXNet} (const \hyperlink{classIPNet}{BaseIPvXNet} \&n)
\begin{DoxyCompactList}\small\item\em Copy constructor for BaseIPvXNet subnet address. \item\end{DoxyCompactList}\item 
\hyperlink{classIPvXNet_a4e7a0338ea5d927bfef5e912d7c97145}{IPvXNet} (const \hyperlink{classIPvXNet}{IPvXNet} \&n)
\begin{DoxyCompactList}\small\item\em Copy constructor for \hyperlink{classIPvXNet}{IPvXNet} subnet address. \item\end{DoxyCompactList}\item 
\hyperlink{classIPvXNet_ada2af6c2256c3acc2e5cbd0c39a8e46b}{IPvXNet} (const \hyperlink{classIPNet}{IPv4Net} \&v4net)
\begin{DoxyCompactList}\small\item\em Copy constructor for IPv4Net subnet address. \item\end{DoxyCompactList}\item 
\hyperlink{classIPvXNet_abeb733bf509f3bd09f8a0c959a4c5872}{IPvXNet} (const \hyperlink{classIPNet}{IPv6Net} \&v6net)
\begin{DoxyCompactList}\small\item\em Copy constructor for IPv6Net subnet address. \item\end{DoxyCompactList}\item 
\hyperlink{classIPvXNet_a52382165f6fc96282c627fb4f72926a8}{IPvXNet} (const char $\ast$cp)  throw (InvalidString, InvalidNetmaskLength)
\begin{DoxyCompactList}\small\item\em Constructor from a string. \item\end{DoxyCompactList}\item 
\hyperlink{classIPvXNet_a9e86bf4d80f5eb59035d4a070400e46e}{IPvXNet} (const \hyperlink{classIPvX}{IPvX} \&a, uint8\_\-t prefix\_\-len)  throw (InvalidNetmaskLength)
\begin{DoxyCompactList}\small\item\em Constructor from a given base address and a prefix length. \item\end{DoxyCompactList}\item 
bool \hyperlink{classIPvXNet_a250c4d7705188499d1589de8738858b4}{is\_\-ipv4} () const 
\begin{DoxyCompactList}\small\item\em Test if this subnet is \hyperlink{classIPv4}{IPv4} subnet. \item\end{DoxyCompactList}\item 
bool \hyperlink{classIPvXNet_a1753d5bbd6895b7b1afd140174b0d349}{is\_\-ipv6} () const 
\begin{DoxyCompactList}\small\item\em Test if this subnet is \hyperlink{classIPv6}{IPv6} subnet. \item\end{DoxyCompactList}\item 
\hyperlink{classIPNet}{IPv4Net} \hyperlink{classIPvXNet_abc8f0810bc4d5490a0465f93b67f3d6f}{get\_\-ipv4net} () const   throw (InvalidCast)
\begin{DoxyCompactList}\small\item\em Get IPv4Net subnet. \item\end{DoxyCompactList}\item 
\hyperlink{classIPNet}{IPv6Net} \hyperlink{classIPvXNet_ab03da2b2a788e0313f9c93ed5ac2541b}{get\_\-ipv6net} () const   throw (InvalidCast)
\begin{DoxyCompactList}\small\item\em Get IPv6Net subnet. \item\end{DoxyCompactList}\item 
void \hyperlink{classIPvXNet_a29da3d2953fe876c8bcfe2364ff6879f}{get} (\hyperlink{classIPNet}{IPv4Net} \&to\_\-ipv4net) const   throw (InvalidCast)
\begin{DoxyCompactList}\small\item\em Assign address value to an IPv4Net subnet. \item\end{DoxyCompactList}\item 
void \hyperlink{classIPvXNet_a5c1a6ad6ea6ad152415f49534e44c18b}{get} (\hyperlink{classIPNet}{IPv6Net} \&to\_\-ipv6net) const   throw (InvalidCast)
\begin{DoxyCompactList}\small\item\em Assign address value to an IPv6Net subnet. \item\end{DoxyCompactList}\item 
int \hyperlink{classIPvXNet_a2becee7b3f24e97175382b443cb4716d}{af} () const 
\begin{DoxyCompactList}\small\item\em Get \hyperlink{protocolthe-p}{the} address family. \item\end{DoxyCompactList}\item 
bool \hyperlink{classIPvXNet_a53901897aa025a5630080288ad6640f6}{is\_\-unicast} () const 
\begin{DoxyCompactList}\small\item\em Test if this subnet is a unicast prefix. \item\end{DoxyCompactList}\item 
bool \hyperlink{classIPvXNet_ac225fd556124633e4ab519f18c4bed25}{is\_\-multicast} () const 
\begin{DoxyCompactList}\small\item\em Test if this subnet is within \hyperlink{protocolthe-p}{the} multicast address range. \item\end{DoxyCompactList}\item 
bool \hyperlink{classIPvXNet_ae61f56d72418b50a9a67eba0f6180493}{is\_\-class\_\-a} () const 
\begin{DoxyCompactList}\small\item\em Test if this subnet is within \hyperlink{protocolthe-p}{the} \hyperlink{classIPv4}{IPv4} Class A address range (0.0.0.0/1). \item\end{DoxyCompactList}\item 
bool \hyperlink{classIPvXNet_a96db74e4152a785eaa7e5e4a7f6a1890}{is\_\-class\_\-b} () const 
\begin{DoxyCompactList}\small\item\em Test if this subnet is within \hyperlink{protocolthe-p}{the} \hyperlink{classIPv4}{IPv4} Class B address range (128.0.0.0/2). \item\end{DoxyCompactList}\item 
bool \hyperlink{classIPvXNet_a2d963166666878616edc80e2c118a20b}{is\_\-class\_\-c} () const 
\begin{DoxyCompactList}\small\item\em Test if this subnet is within \hyperlink{protocolthe-p}{the} \hyperlink{classIPv4}{IPv4} Class C address range (192.0.0.0/3). \item\end{DoxyCompactList}\item 
bool \hyperlink{classIPvXNet_a47b709b8d7504f0b703fce79302cda48}{is\_\-experimental} () const 
\begin{DoxyCompactList}\small\item\em Test if this subnet is within \hyperlink{protocolthe-p}{the} \hyperlink{classIPv4}{IPv4} experimental Class E address range (240.0.0.0/4). \item\end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Static Public Member Functions}
\begin{DoxyCompactItemize}
\item 
static \hyperlink{classIPvXNet}{IPvXNet} \hyperlink{classIPvXNet_a34d49d54af5da9f1603c9e185687e471}{ip\_\-multicast\_\-base\_\-prefix} (int family)  throw (InvalidFamily)
\begin{DoxyCompactList}\small\item\em Return \hyperlink{protocolthe-p}{the} subnet containing all multicast addresses. \item\end{DoxyCompactList}\item 
static \hyperlink{classIPvXNet}{IPvXNet} \hyperlink{classIPvXNet_a170d0159338899a9e7d2b450399893bb}{ip\_\-class\_\-a\_\-base\_\-prefix} (int family)  throw (InvalidFamily)
\begin{DoxyCompactList}\small\item\em Return \hyperlink{protocolthe-p}{the} subnet containing all \hyperlink{classIPv4}{IPv4} Class A addresses (0.0.0.0/1). \item\end{DoxyCompactList}\item 
static \hyperlink{classIPvXNet}{IPvXNet} \hyperlink{classIPvXNet_a41755ae52d9691d8202b72fb9f60ee20}{ip\_\-class\_\-b\_\-base\_\-prefix} (int family)  throw (InvalidFamily)
\begin{DoxyCompactList}\small\item\em Return \hyperlink{protocolthe-p}{the} subnet containing all \hyperlink{classIPv4}{IPv4} Class B addresses (128.0.0.0/2). \item\end{DoxyCompactList}\item 
static \hyperlink{classIPvXNet}{IPvXNet} \hyperlink{classIPvXNet_a7743b75c4f2b2403abab2139eaa71464}{ip\_\-class\_\-c\_\-base\_\-prefix} (int family)  throw (InvalidFamily)
\begin{DoxyCompactList}\small\item\em Return \hyperlink{protocolthe-p}{the} subnet containing all \hyperlink{classIPv4}{IPv4} Class C addresses (192.0.0.0/3). \item\end{DoxyCompactList}\item 
static \hyperlink{classIPvXNet}{IPvXNet} \hyperlink{classIPvXNet_a9a580ee1120ddd5fd23fa000d03c4708}{ip\_\-experimental\_\-base\_\-prefix} (int family)  throw (InvalidFamily)
\begin{DoxyCompactList}\small\item\em Return \hyperlink{protocolthe-p}{the} subnet containing all \hyperlink{classIPv4}{IPv4} experimental Class E addresses (240.0.0.0/4). \item\end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
\hyperlink{classIPvXNet}{IPvXNet} class. Container for \hyperlink{classIPv4}{IPv4} and \hyperlink{classIPv6}{IPv6} networks.

Also see \hyperlink{classIPNet}{IPNet} for available methods. 

\subsection{Constructor \& Destructor Documentation}
\hypertarget{classIPvXNet_ac407b83fe991aca157b6898d00506c4f}{
\index{IPvXNet@{IPvXNet}!IPvXNet@{IPvXNet}}
\index{IPvXNet@{IPvXNet}!IPvXNet@{IPvXNet}}
\subsubsection[{IPvXNet}]{\setlength{\rightskip}{0pt plus 5cm}IPvXNet::IPvXNet (
\begin{DoxyParamCaption}
\item[{int}]{family}
\end{DoxyParamCaption}
)  throw ({\bf InvalidFamily})\hspace{0.3cm}{\ttfamily  \mbox{[}inline, explicit\mbox{]}}}}
\label{classIPvXNet_ac407b83fe991aca157b6898d00506c4f}


Constructor for a specified address family. 

Creates a network address of specified family, and address value of INADDR\_\-ANY or IN6ADDR\_\-ANY (for \hyperlink{classIPv4}{IPv4} and \hyperlink{classIPv6}{IPv6} respectively).


\begin{DoxyParams}{Parameters}
{\em family} & \hyperlink{protocolthe-p}{the} address family. \\
\hline
\end{DoxyParams}
\hypertarget{classIPvXNet_a3ae13b98e94de0886f7a2b5224d28e61}{
\index{IPvXNet@{IPvXNet}!IPvXNet@{IPvXNet}}
\index{IPvXNet@{IPvXNet}!IPvXNet@{IPvXNet}}
\subsubsection[{IPvXNet}]{\setlength{\rightskip}{0pt plus 5cm}IPvXNet::IPvXNet (
\begin{DoxyParamCaption}
\item[{const {\bf BaseIPvXNet} \&}]{n}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classIPvXNet_a3ae13b98e94de0886f7a2b5224d28e61}


Copy constructor for BaseIPvXNet subnet address. 


\begin{DoxyParams}{Parameters}
{\em n} & \hyperlink{protocolthe-p}{the} subnet to copy from. \\
\hline
\end{DoxyParams}
\hypertarget{classIPvXNet_a4e7a0338ea5d927bfef5e912d7c97145}{
\index{IPvXNet@{IPvXNet}!IPvXNet@{IPvXNet}}
\index{IPvXNet@{IPvXNet}!IPvXNet@{IPvXNet}}
\subsubsection[{IPvXNet}]{\setlength{\rightskip}{0pt plus 5cm}IPvXNet::IPvXNet (
\begin{DoxyParamCaption}
\item[{const {\bf IPvXNet} \&}]{n}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classIPvXNet_a4e7a0338ea5d927bfef5e912d7c97145}


Copy constructor for \hyperlink{classIPvXNet}{IPvXNet} subnet address. 


\begin{DoxyParams}{Parameters}
{\em n} & \hyperlink{protocolthe-p}{the} subnet to copy from. \\
\hline
\end{DoxyParams}
\hypertarget{classIPvXNet_ada2af6c2256c3acc2e5cbd0c39a8e46b}{
\index{IPvXNet@{IPvXNet}!IPvXNet@{IPvXNet}}
\index{IPvXNet@{IPvXNet}!IPvXNet@{IPvXNet}}
\subsubsection[{IPvXNet}]{\setlength{\rightskip}{0pt plus 5cm}IPvXNet::IPvXNet (
\begin{DoxyParamCaption}
\item[{const {\bf IPv4Net} \&}]{v4net}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classIPvXNet_ada2af6c2256c3acc2e5cbd0c39a8e46b}


Copy constructor for IPv4Net subnet address. 


\begin{DoxyParams}{Parameters}
{\em v4net} & \hyperlink{protocolthe-p}{the} subnet to copy from. \\
\hline
\end{DoxyParams}
\hypertarget{classIPvXNet_abeb733bf509f3bd09f8a0c959a4c5872}{
\index{IPvXNet@{IPvXNet}!IPvXNet@{IPvXNet}}
\index{IPvXNet@{IPvXNet}!IPvXNet@{IPvXNet}}
\subsubsection[{IPvXNet}]{\setlength{\rightskip}{0pt plus 5cm}IPvXNet::IPvXNet (
\begin{DoxyParamCaption}
\item[{const {\bf IPv6Net} \&}]{v6net}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classIPvXNet_abeb733bf509f3bd09f8a0c959a4c5872}


Copy constructor for IPv6Net subnet address. 


\begin{DoxyParams}{Parameters}
{\em v6net} & \hyperlink{protocolthe-p}{the} subnet to copy from. \\
\hline
\end{DoxyParams}
\hypertarget{classIPvXNet_a52382165f6fc96282c627fb4f72926a8}{
\index{IPvXNet@{IPvXNet}!IPvXNet@{IPvXNet}}
\index{IPvXNet@{IPvXNet}!IPvXNet@{IPvXNet}}
\subsubsection[{IPvXNet}]{\setlength{\rightskip}{0pt plus 5cm}IPvXNet::IPvXNet (
\begin{DoxyParamCaption}
\item[{const char $\ast$}]{cp}
\end{DoxyParamCaption}
)  throw ({\bf InvalidString}, {\bf InvalidNetmaskLength})\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classIPvXNet_a52382165f6fc96282c627fb4f72926a8}


Constructor from a string. 


\begin{DoxyParams}{Parameters}
{\em from\_\-cstring} & C-\/style string with slash separated address and prefix length. Examples: \char`\"{}12.34.56/24\char`\"{}, \char`\"{}1234:5678/32::\char`\"{} \\
\hline
\end{DoxyParams}
\hypertarget{classIPvXNet_a9e86bf4d80f5eb59035d4a070400e46e}{
\index{IPvXNet@{IPvXNet}!IPvXNet@{IPvXNet}}
\index{IPvXNet@{IPvXNet}!IPvXNet@{IPvXNet}}
\subsubsection[{IPvXNet}]{\setlength{\rightskip}{0pt plus 5cm}IPvXNet::IPvXNet (
\begin{DoxyParamCaption}
\item[{const {\bf IPvX} \&}]{a, }
\item[{uint8\_\-t}]{prefix\_\-len}
\end{DoxyParamCaption}
)  throw ({\bf InvalidNetmaskLength})\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classIPvXNet_a9e86bf4d80f5eb59035d4a070400e46e}


Constructor from a given base address and a prefix length. 


\begin{DoxyParams}{Parameters}
{\em a} & base address for \hyperlink{protocolthe-p}{the} subnet. \\
\hline
{\em prefix\_\-len} & length of subnet mask. \\
\hline
\end{DoxyParams}


\subsection{Member Function Documentation}
\hypertarget{classIPvXNet_a2becee7b3f24e97175382b443cb4716d}{
\index{IPvXNet@{IPvXNet}!af@{af}}
\index{af@{af}!IPvXNet@{IPvXNet}}
\subsubsection[{af}]{\setlength{\rightskip}{0pt plus 5cm}int IPvXNet::af (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classIPvXNet_a2becee7b3f24e97175382b443cb4716d}


Get \hyperlink{protocolthe-p}{the} address family. 

\begin{DoxyReturn}{Returns}
\hyperlink{protocolthe-p}{the} address family of this subnet (AF\_\-INET or AF\_\-INET6). 
\end{DoxyReturn}
\hypertarget{classIPvXNet_a29da3d2953fe876c8bcfe2364ff6879f}{
\index{IPvXNet@{IPvXNet}!get@{get}}
\index{get@{get}!IPvXNet@{IPvXNet}}
\subsubsection[{get}]{\setlength{\rightskip}{0pt plus 5cm}void IPvXNet::get (
\begin{DoxyParamCaption}
\item[{{\bf IPv4Net} \&}]{to\_\-ipv4net}
\end{DoxyParamCaption}
) const  throw ({\bf InvalidCast})\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classIPvXNet_a29da3d2953fe876c8bcfe2364ff6879f}


Assign address value to an IPv4Net subnet. 


\begin{DoxyParams}{Parameters}
{\em to\_\-ipv4net} & IPv4Net subnet to be assigned IPv4Net value contained within this subnet. \\
\hline
\end{DoxyParams}
\hypertarget{classIPvXNet_a5c1a6ad6ea6ad152415f49534e44c18b}{
\index{IPvXNet@{IPvXNet}!get@{get}}
\index{get@{get}!IPvXNet@{IPvXNet}}
\subsubsection[{get}]{\setlength{\rightskip}{0pt plus 5cm}void IPvXNet::get (
\begin{DoxyParamCaption}
\item[{{\bf IPv6Net} \&}]{to\_\-ipv6net}
\end{DoxyParamCaption}
) const  throw ({\bf InvalidCast})\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classIPvXNet_a5c1a6ad6ea6ad152415f49534e44c18b}


Assign address value to an IPv6Net subnet. 


\begin{DoxyParams}{Parameters}
{\em to\_\-ipv6net} & IPv6Net subnet to be assigned IPv6Net value contained within this subnet. \\
\hline
\end{DoxyParams}
\hypertarget{classIPvXNet_abc8f0810bc4d5490a0465f93b67f3d6f}{
\index{IPvXNet@{IPvXNet}!get\_\-ipv4net@{get\_\-ipv4net}}
\index{get\_\-ipv4net@{get\_\-ipv4net}!IPvXNet@{IPvXNet}}
\subsubsection[{get\_\-ipv4net}]{\setlength{\rightskip}{0pt plus 5cm}{\bf IPv4Net} IPvXNet::get\_\-ipv4net (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const  throw ({\bf InvalidCast})\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classIPvXNet_abc8f0810bc4d5490a0465f93b67f3d6f}


Get IPv4Net subnet. 

\begin{DoxyReturn}{Returns}
IPv4Net subnet contained with \hyperlink{classIPvXNet}{IPvXNet} structure. 
\end{DoxyReturn}
\hypertarget{classIPvXNet_ab03da2b2a788e0313f9c93ed5ac2541b}{
\index{IPvXNet@{IPvXNet}!get\_\-ipv6net@{get\_\-ipv6net}}
\index{get\_\-ipv6net@{get\_\-ipv6net}!IPvXNet@{IPvXNet}}
\subsubsection[{get\_\-ipv6net}]{\setlength{\rightskip}{0pt plus 5cm}{\bf IPv6Net} IPvXNet::get\_\-ipv6net (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const  throw ({\bf InvalidCast})\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classIPvXNet_ab03da2b2a788e0313f9c93ed5ac2541b}


Get IPv6Net subnet. 

\begin{DoxyReturn}{Returns}
IPv6Net subnet contained with \hyperlink{classIPvXNet}{IPvXNet} structure. 
\end{DoxyReturn}
\hypertarget{classIPvXNet_a170d0159338899a9e7d2b450399893bb}{
\index{IPvXNet@{IPvXNet}!ip\_\-class\_\-a\_\-base\_\-prefix@{ip\_\-class\_\-a\_\-base\_\-prefix}}
\index{ip\_\-class\_\-a\_\-base\_\-prefix@{ip\_\-class\_\-a\_\-base\_\-prefix}!IPvXNet@{IPvXNet}}
\subsubsection[{ip\_\-class\_\-a\_\-base\_\-prefix}]{\setlength{\rightskip}{0pt plus 5cm}static {\bf IPvXNet} IPvXNet::ip\_\-class\_\-a\_\-base\_\-prefix (
\begin{DoxyParamCaption}
\item[{int}]{family}
\end{DoxyParamCaption}
)  throw ({\bf InvalidFamily})\hspace{0.3cm}{\ttfamily  \mbox{[}inline, static\mbox{]}}}}
\label{classIPvXNet_a170d0159338899a9e7d2b450399893bb}


Return \hyperlink{protocolthe-p}{the} subnet containing all \hyperlink{classIPv4}{IPv4} Class A addresses (0.0.0.0/1). 

This method applies only for \hyperlink{classIPv4}{IPv4}. Note that this is a static function and can be used without a particular object. Example: \hyperlink{classIPvXNet}{IPvXNet} my\_\-prefix = IPvXNet::ip\_\-class\_\-a\_\-base\_\-prefix(my\_\-family);


\begin{DoxyParams}{Parameters}
{\em family} & \hyperlink{protocolthe-p}{the} address family. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
\hyperlink{protocolthe-p}{the} Class A base prefix address for address family of family. 
\end{DoxyReturn}
\hypertarget{classIPvXNet_a41755ae52d9691d8202b72fb9f60ee20}{
\index{IPvXNet@{IPvXNet}!ip\_\-class\_\-b\_\-base\_\-prefix@{ip\_\-class\_\-b\_\-base\_\-prefix}}
\index{ip\_\-class\_\-b\_\-base\_\-prefix@{ip\_\-class\_\-b\_\-base\_\-prefix}!IPvXNet@{IPvXNet}}
\subsubsection[{ip\_\-class\_\-b\_\-base\_\-prefix}]{\setlength{\rightskip}{0pt plus 5cm}static {\bf IPvXNet} IPvXNet::ip\_\-class\_\-b\_\-base\_\-prefix (
\begin{DoxyParamCaption}
\item[{int}]{family}
\end{DoxyParamCaption}
)  throw ({\bf InvalidFamily})\hspace{0.3cm}{\ttfamily  \mbox{[}inline, static\mbox{]}}}}
\label{classIPvXNet_a41755ae52d9691d8202b72fb9f60ee20}


Return \hyperlink{protocolthe-p}{the} subnet containing all \hyperlink{classIPv4}{IPv4} Class B addresses (128.0.0.0/2). 

This method applies only for \hyperlink{classIPv4}{IPv4}. Note that this is a static function and can be used without a particular object. Example: \hyperlink{classIPvXNet}{IPvXNet} my\_\-prefix = IPvXNet::ip\_\-class\_\-b\_\-base\_\-prefix(my\_\-family);


\begin{DoxyParams}{Parameters}
{\em family} & \hyperlink{protocolthe-p}{the} address family. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
\hyperlink{protocolthe-p}{the} Class B base prefix address for address family of family. 
\end{DoxyReturn}
\hypertarget{classIPvXNet_a7743b75c4f2b2403abab2139eaa71464}{
\index{IPvXNet@{IPvXNet}!ip\_\-class\_\-c\_\-base\_\-prefix@{ip\_\-class\_\-c\_\-base\_\-prefix}}
\index{ip\_\-class\_\-c\_\-base\_\-prefix@{ip\_\-class\_\-c\_\-base\_\-prefix}!IPvXNet@{IPvXNet}}
\subsubsection[{ip\_\-class\_\-c\_\-base\_\-prefix}]{\setlength{\rightskip}{0pt plus 5cm}static {\bf IPvXNet} IPvXNet::ip\_\-class\_\-c\_\-base\_\-prefix (
\begin{DoxyParamCaption}
\item[{int}]{family}
\end{DoxyParamCaption}
)  throw ({\bf InvalidFamily})\hspace{0.3cm}{\ttfamily  \mbox{[}inline, static\mbox{]}}}}
\label{classIPvXNet_a7743b75c4f2b2403abab2139eaa71464}


Return \hyperlink{protocolthe-p}{the} subnet containing all \hyperlink{classIPv4}{IPv4} Class C addresses (192.0.0.0/3). 

This method applies only for \hyperlink{classIPv4}{IPv4}. Note that this is a static function and can be used without a particular object. Example: \hyperlink{classIPvXNet}{IPvXNet} my\_\-prefix = IPvXNet::ip\_\-class\_\-c\_\-base\_\-prefix(my\_\-family);


\begin{DoxyParams}{Parameters}
{\em family} & \hyperlink{protocolthe-p}{the} address family. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
\hyperlink{protocolthe-p}{the} Class C base prefix address for address family of family. 
\end{DoxyReturn}
\hypertarget{classIPvXNet_a9a580ee1120ddd5fd23fa000d03c4708}{
\index{IPvXNet@{IPvXNet}!ip\_\-experimental\_\-base\_\-prefix@{ip\_\-experimental\_\-base\_\-prefix}}
\index{ip\_\-experimental\_\-base\_\-prefix@{ip\_\-experimental\_\-base\_\-prefix}!IPvXNet@{IPvXNet}}
\subsubsection[{ip\_\-experimental\_\-base\_\-prefix}]{\setlength{\rightskip}{0pt plus 5cm}static {\bf IPvXNet} IPvXNet::ip\_\-experimental\_\-base\_\-prefix (
\begin{DoxyParamCaption}
\item[{int}]{family}
\end{DoxyParamCaption}
)  throw ({\bf InvalidFamily})\hspace{0.3cm}{\ttfamily  \mbox{[}inline, static\mbox{]}}}}
\label{classIPvXNet_a9a580ee1120ddd5fd23fa000d03c4708}


Return \hyperlink{protocolthe-p}{the} subnet containing all \hyperlink{classIPv4}{IPv4} experimental Class E addresses (240.0.0.0/4). 

This method applies only for \hyperlink{classIPv4}{IPv4}. Note that this is a static function and can be used without a particular object. Example: \hyperlink{classIPvXNet}{IPvXNet} my\_\-prefix = IPvXNet::ip\_\-experimental\_\-base\_\-prefix(my\_\-family);


\begin{DoxyParams}{Parameters}
{\em family} & \hyperlink{protocolthe-p}{the} address family. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
\hyperlink{protocolthe-p}{the} experimental base prefix address for address family of family. 
\end{DoxyReturn}
\hypertarget{classIPvXNet_a34d49d54af5da9f1603c9e185687e471}{
\index{IPvXNet@{IPvXNet}!ip\_\-multicast\_\-base\_\-prefix@{ip\_\-multicast\_\-base\_\-prefix}}
\index{ip\_\-multicast\_\-base\_\-prefix@{ip\_\-multicast\_\-base\_\-prefix}!IPvXNet@{IPvXNet}}
\subsubsection[{ip\_\-multicast\_\-base\_\-prefix}]{\setlength{\rightskip}{0pt plus 5cm}static {\bf IPvXNet} IPvXNet::ip\_\-multicast\_\-base\_\-prefix (
\begin{DoxyParamCaption}
\item[{int}]{family}
\end{DoxyParamCaption}
)  throw ({\bf InvalidFamily})\hspace{0.3cm}{\ttfamily  \mbox{[}inline, static\mbox{]}}}}
\label{classIPvXNet_a34d49d54af5da9f1603c9e185687e471}


Return \hyperlink{protocolthe-p}{the} subnet containing all multicast addresses. 

Note that this is a static function and can be used without a particular object. Example: \hyperlink{classIPvXNet}{IPvXNet} my\_\-prefix = IPvXNet::ip\_\-multicast\_\-base\_\-prefix(my\_\-family);


\begin{DoxyParams}{Parameters}
{\em family} & \hyperlink{protocolthe-p}{the} address family. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
\hyperlink{protocolthe-p}{the} multicast base prefix address for address family of family. 
\end{DoxyReturn}
\hypertarget{classIPvXNet_ae61f56d72418b50a9a67eba0f6180493}{
\index{IPvXNet@{IPvXNet}!is\_\-class\_\-a@{is\_\-class\_\-a}}
\index{is\_\-class\_\-a@{is\_\-class\_\-a}!IPvXNet@{IPvXNet}}
\subsubsection[{is\_\-class\_\-a}]{\setlength{\rightskip}{0pt plus 5cm}bool IPvXNet::is\_\-class\_\-a (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classIPvXNet_ae61f56d72418b50a9a67eba0f6180493}


Test if this subnet is within \hyperlink{protocolthe-p}{the} \hyperlink{classIPv4}{IPv4} Class A address range (0.0.0.0/1). 

This method applies only for \hyperlink{classIPv4}{IPv4}, and always returns false for \hyperlink{classIPv6}{IPv6}.

\begin{DoxyReturn}{Returns}
true if this subnet is within \hyperlink{protocolthe-p}{the} \hyperlink{classIPv4}{IPv4} Class A address range. 
\end{DoxyReturn}


Reimplemented from \hyperlink{classIPNet_a6ce91d64bc8ab732c6458621d20b6cb7}{IPNet$<$ A $>$}.

\hypertarget{classIPvXNet_a96db74e4152a785eaa7e5e4a7f6a1890}{
\index{IPvXNet@{IPvXNet}!is\_\-class\_\-b@{is\_\-class\_\-b}}
\index{is\_\-class\_\-b@{is\_\-class\_\-b}!IPvXNet@{IPvXNet}}
\subsubsection[{is\_\-class\_\-b}]{\setlength{\rightskip}{0pt plus 5cm}bool IPvXNet::is\_\-class\_\-b (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classIPvXNet_a96db74e4152a785eaa7e5e4a7f6a1890}


Test if this subnet is within \hyperlink{protocolthe-p}{the} \hyperlink{classIPv4}{IPv4} Class B address range (128.0.0.0/2). 

This method applies only for \hyperlink{classIPv4}{IPv4}, and always returns false for \hyperlink{classIPv6}{IPv6}.

\begin{DoxyReturn}{Returns}
true if this subnet is within \hyperlink{protocolthe-p}{the} \hyperlink{classIPv4}{IPv4} Class B address range. 
\end{DoxyReturn}


Reimplemented from \hyperlink{classIPNet_a0dc95eb0252fed3a5163eaf61a05bc9b}{IPNet$<$ A $>$}.

\hypertarget{classIPvXNet_a2d963166666878616edc80e2c118a20b}{
\index{IPvXNet@{IPvXNet}!is\_\-class\_\-c@{is\_\-class\_\-c}}
\index{is\_\-class\_\-c@{is\_\-class\_\-c}!IPvXNet@{IPvXNet}}
\subsubsection[{is\_\-class\_\-c}]{\setlength{\rightskip}{0pt plus 5cm}bool IPvXNet::is\_\-class\_\-c (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classIPvXNet_a2d963166666878616edc80e2c118a20b}


Test if this subnet is within \hyperlink{protocolthe-p}{the} \hyperlink{classIPv4}{IPv4} Class C address range (192.0.0.0/3). 

This method applies only for \hyperlink{classIPv4}{IPv4}, and always returns false for \hyperlink{classIPv6}{IPv6}.

\begin{DoxyReturn}{Returns}
true if this subnet is within \hyperlink{protocolthe-p}{the} \hyperlink{classIPv4}{IPv4} Class C address range. 
\end{DoxyReturn}


Reimplemented from \hyperlink{classIPNet_a79fd75627db4ec423540f4b99b8c36f4}{IPNet$<$ A $>$}.

\hypertarget{classIPvXNet_a47b709b8d7504f0b703fce79302cda48}{
\index{IPvXNet@{IPvXNet}!is\_\-experimental@{is\_\-experimental}}
\index{is\_\-experimental@{is\_\-experimental}!IPvXNet@{IPvXNet}}
\subsubsection[{is\_\-experimental}]{\setlength{\rightskip}{0pt plus 5cm}bool IPvXNet::is\_\-experimental (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classIPvXNet_a47b709b8d7504f0b703fce79302cda48}


Test if this subnet is within \hyperlink{protocolthe-p}{the} \hyperlink{classIPv4}{IPv4} experimental Class E address range (240.0.0.0/4). 

This method applies only for \hyperlink{classIPv4}{IPv4}, and always returns false for \hyperlink{classIPv6}{IPv6}.

\begin{DoxyReturn}{Returns}
true if this subnet is within \hyperlink{protocolthe-p}{the} \hyperlink{classIPv4}{IPv4} experimental address range. 
\end{DoxyReturn}


Reimplemented from \hyperlink{classIPNet_ac0c1f6c23f8c7fa363449dbe1b060e85}{IPNet$<$ A $>$}.

\hypertarget{classIPvXNet_a250c4d7705188499d1589de8738858b4}{
\index{IPvXNet@{IPvXNet}!is\_\-ipv4@{is\_\-ipv4}}
\index{is\_\-ipv4@{is\_\-ipv4}!IPvXNet@{IPvXNet}}
\subsubsection[{is\_\-ipv4}]{\setlength{\rightskip}{0pt plus 5cm}bool IPvXNet::is\_\-ipv4 (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classIPvXNet_a250c4d7705188499d1589de8738858b4}


Test if this subnet is \hyperlink{classIPv4}{IPv4} subnet. 

\begin{DoxyReturn}{Returns}
true if \hyperlink{protocolthe-p}{the} subnet is \hyperlink{classIPv4}{IPv4}. 
\end{DoxyReturn}
\hypertarget{classIPvXNet_a1753d5bbd6895b7b1afd140174b0d349}{
\index{IPvXNet@{IPvXNet}!is\_\-ipv6@{is\_\-ipv6}}
\index{is\_\-ipv6@{is\_\-ipv6}!IPvXNet@{IPvXNet}}
\subsubsection[{is\_\-ipv6}]{\setlength{\rightskip}{0pt plus 5cm}bool IPvXNet::is\_\-ipv6 (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classIPvXNet_a1753d5bbd6895b7b1afd140174b0d349}


Test if this subnet is \hyperlink{classIPv6}{IPv6} subnet. 

\begin{DoxyReturn}{Returns}
true if \hyperlink{protocolthe-p}{the} subnet is \hyperlink{classIPv6}{IPv6}. 
\end{DoxyReturn}
\hypertarget{classIPvXNet_ac225fd556124633e4ab519f18c4bed25}{
\index{IPvXNet@{IPvXNet}!is\_\-multicast@{is\_\-multicast}}
\index{is\_\-multicast@{is\_\-multicast}!IPvXNet@{IPvXNet}}
\subsubsection[{is\_\-multicast}]{\setlength{\rightskip}{0pt plus 5cm}bool IPvXNet::is\_\-multicast (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classIPvXNet_ac225fd556124633e4ab519f18c4bed25}


Test if this subnet is within \hyperlink{protocolthe-p}{the} multicast address range. 

\begin{DoxyReturn}{Returns}
true if this subnet is within \hyperlink{protocolthe-p}{the} multicast address range. 
\end{DoxyReturn}


Reimplemented from \hyperlink{classIPNet_ad5447800c67d2fb3ff02f930cce77a30}{IPNet$<$ A $>$}.

\hypertarget{classIPvXNet_a53901897aa025a5630080288ad6640f6}{
\index{IPvXNet@{IPvXNet}!is\_\-unicast@{is\_\-unicast}}
\index{is\_\-unicast@{is\_\-unicast}!IPvXNet@{IPvXNet}}
\subsubsection[{is\_\-unicast}]{\setlength{\rightskip}{0pt plus 5cm}bool IPvXNet::is\_\-unicast (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classIPvXNet_a53901897aa025a5630080288ad6640f6}


Test if this subnet is a unicast prefix. 

In case of \hyperlink{classIPv4}{IPv4} all prefixes that fall within \hyperlink{protocolthe-p}{the} Class A, Class B or Class C address space are unicast. In case of \hyperlink{classIPv6}{IPv6} all prefixes that don't contain \hyperlink{protocolthe-p}{the} multicast address space are unicast. Note that \hyperlink{protocolthe-p}{the} default route (0.0.0.0/0 for \hyperlink{classIPv4}{IPv4} or ::/0 for \hyperlink{classIPv6}{IPv6}) is also considered an unicast prefix.

\begin{DoxyReturn}{Returns}
true if this subnet is a unicast prefix. 
\end{DoxyReturn}


Reimplemented from \hyperlink{classIPNet_a640b69989971c3918241fdd0393678cc}{IPNet$<$ A $>$}.



The documentation for this class was generated from the following file:\begin{DoxyCompactItemize}
\item 
/home/greearb/git/xorp.ct.github/xorp/libxorp/ipvxnet.hh\end{DoxyCompactItemize}
