\hypertarget{group__hwlocality__helper__find__coverings}{\section{Finding a set of similar Objects covering at least a C\+P\+U set}
\label{group__hwlocality__helper__find__coverings}\index{Finding a set of similar Objects covering at least a C\+P\+U set@{Finding a set of similar Objects covering at least a C\+P\+U set}}
}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
static \+\_\+\+\_\+hwloc\+\_\+inline \hyperlink{group__hwlocality__objects_ga79b8ab56877ef99ac59b833203391c7d}{hwloc\+\_\+obj\+\_\+t} \hyperlink{group__hwlocality__helper__find__coverings_ga2f9a4ec15e9cfae8c21501257a51ce5b}{hwloc\+\_\+get\+\_\+next\+\_\+obj\+\_\+covering\+\_\+cpuset\+\_\+by\+\_\+depth} (\hyperlink{group__hwlocality__topology_ga9d1e76ee15a7dee158b786c30b6a6e38}{hwloc\+\_\+topology\+\_\+t} topology, \hyperlink{group__hwlocality__sets_ga1f784433e9b606261f62d1134f6a3b25}{hwloc\+\_\+const\+\_\+cpuset\+\_\+t} set, unsigned depth, \hyperlink{group__hwlocality__objects_ga79b8ab56877ef99ac59b833203391c7d}{hwloc\+\_\+obj\+\_\+t} prev)
\begin{DoxyCompactList}\small\item\em Iterate through same-\/depth objects covering at least C\+P\+U set {\ttfamily set}. \end{DoxyCompactList}\item 
static \+\_\+\+\_\+hwloc\+\_\+inline \hyperlink{group__hwlocality__objects_ga79b8ab56877ef99ac59b833203391c7d}{hwloc\+\_\+obj\+\_\+t} \hyperlink{group__hwlocality__helper__find__coverings_ga5915ea30f326676b3a4cfff371ce04d1}{hwloc\+\_\+get\+\_\+next\+\_\+obj\+\_\+covering\+\_\+cpuset\+\_\+by\+\_\+type} (\hyperlink{group__hwlocality__topology_ga9d1e76ee15a7dee158b786c30b6a6e38}{hwloc\+\_\+topology\+\_\+t} topology, \hyperlink{group__hwlocality__sets_ga1f784433e9b606261f62d1134f6a3b25}{hwloc\+\_\+const\+\_\+cpuset\+\_\+t} set, \hyperlink{group__hwlocality__types_gacd37bb612667dc437d66bfb175a8dc55}{hwloc\+\_\+obj\+\_\+type\+\_\+t} type, \hyperlink{group__hwlocality__objects_ga79b8ab56877ef99ac59b833203391c7d}{hwloc\+\_\+obj\+\_\+t} prev)
\begin{DoxyCompactList}\small\item\em Iterate through same-\/type objects covering at least C\+P\+U set {\ttfamily set}. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}


\subsection{Function Documentation}
\hypertarget{group__hwlocality__helper__find__coverings_ga2f9a4ec15e9cfae8c21501257a51ce5b}{\index{Finding a set of similar Objects covering at least a C\+P\+U set@{Finding a set of similar Objects covering at least a C\+P\+U set}!hwloc\+\_\+get\+\_\+next\+\_\+obj\+\_\+covering\+\_\+cpuset\+\_\+by\+\_\+depth@{hwloc\+\_\+get\+\_\+next\+\_\+obj\+\_\+covering\+\_\+cpuset\+\_\+by\+\_\+depth}}
\index{hwloc\+\_\+get\+\_\+next\+\_\+obj\+\_\+covering\+\_\+cpuset\+\_\+by\+\_\+depth@{hwloc\+\_\+get\+\_\+next\+\_\+obj\+\_\+covering\+\_\+cpuset\+\_\+by\+\_\+depth}!Finding a set of similar Objects covering at least a C\+P\+U set@{Finding a set of similar Objects covering at least a C\+P\+U set}}
\subsubsection[{hwloc\+\_\+get\+\_\+next\+\_\+obj\+\_\+covering\+\_\+cpuset\+\_\+by\+\_\+depth}]{\setlength{\rightskip}{0pt plus 5cm}static \+\_\+\+\_\+hwloc\+\_\+inline {\bf hwloc\+\_\+obj\+\_\+t} hwloc\+\_\+get\+\_\+next\+\_\+obj\+\_\+covering\+\_\+cpuset\+\_\+by\+\_\+depth (
\begin{DoxyParamCaption}
\item[{{\bf hwloc\+\_\+topology\+\_\+t}}]{topology, }
\item[{{\bf hwloc\+\_\+const\+\_\+cpuset\+\_\+t}}]{set, }
\item[{unsigned}]{depth, }
\item[{{\bf hwloc\+\_\+obj\+\_\+t}}]{prev}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [static]}}}\label{group__hwlocality__helper__find__coverings_ga2f9a4ec15e9cfae8c21501257a51ce5b}


Iterate through same-\/depth objects covering at least C\+P\+U set {\ttfamily set}. 

If object {\ttfamily prev} is {\ttfamily N\+U\+L\+L}, return the first object at depth {\ttfamily depth} covering at least part of C\+P\+U set {\ttfamily set}. The next invokation should pass the previous return value in {\ttfamily prev} so as to obtain the next object covering at least another part of {\ttfamily set}. 

References hwloc\+\_\+obj\+::cpuset, hwloc\+\_\+bitmap\+\_\+intersects(), hwloc\+\_\+get\+\_\+next\+\_\+obj\+\_\+by\+\_\+depth(), and hwloc\+\_\+obj\+::next\+\_\+cousin.



Referenced by hwloc\+\_\+cpuset\+\_\+to\+\_\+nodeset(), hwloc\+\_\+cpuset\+\_\+to\+\_\+nodeset\+\_\+strict(), and hwloc\+\_\+get\+\_\+next\+\_\+obj\+\_\+covering\+\_\+cpuset\+\_\+by\+\_\+type().

\hypertarget{group__hwlocality__helper__find__coverings_ga5915ea30f326676b3a4cfff371ce04d1}{\index{Finding a set of similar Objects covering at least a C\+P\+U set@{Finding a set of similar Objects covering at least a C\+P\+U set}!hwloc\+\_\+get\+\_\+next\+\_\+obj\+\_\+covering\+\_\+cpuset\+\_\+by\+\_\+type@{hwloc\+\_\+get\+\_\+next\+\_\+obj\+\_\+covering\+\_\+cpuset\+\_\+by\+\_\+type}}
\index{hwloc\+\_\+get\+\_\+next\+\_\+obj\+\_\+covering\+\_\+cpuset\+\_\+by\+\_\+type@{hwloc\+\_\+get\+\_\+next\+\_\+obj\+\_\+covering\+\_\+cpuset\+\_\+by\+\_\+type}!Finding a set of similar Objects covering at least a C\+P\+U set@{Finding a set of similar Objects covering at least a C\+P\+U set}}
\subsubsection[{hwloc\+\_\+get\+\_\+next\+\_\+obj\+\_\+covering\+\_\+cpuset\+\_\+by\+\_\+type}]{\setlength{\rightskip}{0pt plus 5cm}static \+\_\+\+\_\+hwloc\+\_\+inline {\bf hwloc\+\_\+obj\+\_\+t} hwloc\+\_\+get\+\_\+next\+\_\+obj\+\_\+covering\+\_\+cpuset\+\_\+by\+\_\+type (
\begin{DoxyParamCaption}
\item[{{\bf hwloc\+\_\+topology\+\_\+t}}]{topology, }
\item[{{\bf hwloc\+\_\+const\+\_\+cpuset\+\_\+t}}]{set, }
\item[{{\bf hwloc\+\_\+obj\+\_\+type\+\_\+t}}]{type, }
\item[{{\bf hwloc\+\_\+obj\+\_\+t}}]{prev}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [static]}}}\label{group__hwlocality__helper__find__coverings_ga5915ea30f326676b3a4cfff371ce04d1}


Iterate through same-\/type objects covering at least C\+P\+U set {\ttfamily set}. 

If object {\ttfamily prev} is {\ttfamily N\+U\+L\+L}, return the first object of type {\ttfamily type} covering at least part of C\+P\+U set {\ttfamily set}. The next invokation should pass the previous return value in {\ttfamily prev} so as to obtain the next object of type {\ttfamily type} covering at least another part of {\ttfamily set}.

If there are no or multiple depths for type {\ttfamily type}, {\ttfamily N\+U\+L\+L} is returned. The caller may fallback to \hyperlink{group__hwlocality__helper__find__coverings_ga2f9a4ec15e9cfae8c21501257a51ce5b}{hwloc\+\_\+get\+\_\+next\+\_\+obj\+\_\+covering\+\_\+cpuset\+\_\+by\+\_\+depth()} for each depth. 

References hwloc\+\_\+obj\+::depth, hwloc\+\_\+get\+\_\+next\+\_\+obj\+\_\+covering\+\_\+cpuset\+\_\+by\+\_\+depth(), hwloc\+\_\+get\+\_\+type\+\_\+depth(), H\+W\+L\+O\+C\+\_\+\+T\+Y\+P\+E\+\_\+\+D\+E\+P\+T\+H\+\_\+\+M\+U\+L\+T\+I\+P\+L\+E, and H\+W\+L\+O\+C\+\_\+\+T\+Y\+P\+E\+\_\+\+D\+E\+P\+T\+H\+\_\+\+U\+N\+K\+N\+O\+W\+N.



Referenced by hwloc\+\_\+cpuset\+\_\+to\+\_\+linux\+\_\+libnuma\+\_\+bitmask(), and hwloc\+\_\+cpuset\+\_\+to\+\_\+linux\+\_\+libnuma\+\_\+ulongs().

