\hypertarget{dss__open__close_8c}{\section{opal/dss/dss\+\_\+open\+\_\+close.c File Reference}
\label{dss__open__close_8c}\index{opal/dss/dss\+\_\+open\+\_\+close.\+c@{opal/dss/dss\+\_\+open\+\_\+close.\+c}}
}
{\ttfamily \#include \char`\"{}opal\+\_\+config.\+h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}opal/mca/base/mca\+\_\+base\+\_\+param.\+h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}opal/dss/dss\+\_\+internal.\+h\char`\"{}}\\*
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
static void \hyperlink{dss__open__close_8c_a34c82bcd4524ed9e48cf4198933e2145}{opal\+\_\+data\+\_\+value\+\_\+construct} (\hyperlink{structopal__dss__value__t}{opal\+\_\+dss\+\_\+value\+\_\+t} $\ast$ptr)
\begin{DoxyCompactList}\small\item\em Object constructors, destructors, and instantiations. \end{DoxyCompactList}\item 
\hypertarget{dss__open__close_8c_a16d7815c5606ae94549362d2ad1972bc}{static void {\bfseries opal\+\_\+data\+\_\+value\+\_\+destruct} (\hyperlink{structopal__dss__value__t}{opal\+\_\+dss\+\_\+value\+\_\+t} $\ast$ptr)}\label{dss__open__close_8c_a16d7815c5606ae94549362d2ad1972bc}

\item 
\hypertarget{dss__open__close_8c_a07078fbb2cc83d151212f974a45f35f2}{{\bfseries O\+B\+J\+\_\+\+C\+L\+A\+S\+S\+\_\+\+I\+N\+S\+T\+A\+N\+C\+E} (\hyperlink{structopal__dss__value__t}{opal\+\_\+dss\+\_\+value\+\_\+t}, \hyperlink{structopal__object__t}{opal\+\_\+object\+\_\+t}, \hyperlink{dss__open__close_8c_a34c82bcd4524ed9e48cf4198933e2145}{opal\+\_\+data\+\_\+value\+\_\+construct}, opal\+\_\+data\+\_\+value\+\_\+destruct)}\label{dss__open__close_8c_a07078fbb2cc83d151212f974a45f35f2}

\item 
static void \hyperlink{dss__open__close_8c_a1c8743dd275cb9c0f81878862c7e3798}{opal\+\_\+buffer\+\_\+construct} (\hyperlink{structopal__buffer__t}{opal\+\_\+buffer\+\_\+t} $\ast$buffer)
\item 
\hypertarget{dss__open__close_8c_a87a71614b622ad1bb9ed177e809c61cb}{static void {\bfseries opal\+\_\+buffer\+\_\+destruct} (\hyperlink{structopal__buffer__t}{opal\+\_\+buffer\+\_\+t} $\ast$buffer)}\label{dss__open__close_8c_a87a71614b622ad1bb9ed177e809c61cb}

\item 
\hypertarget{dss__open__close_8c_a928525aecf36bbcaa7476ab0975d0839}{{\bfseries O\+B\+J\+\_\+\+C\+L\+A\+S\+S\+\_\+\+I\+N\+S\+T\+A\+N\+C\+E} (\hyperlink{structopal__buffer__t}{opal\+\_\+buffer\+\_\+t}, \hyperlink{structopal__object__t}{opal\+\_\+object\+\_\+t}, \hyperlink{dss__open__close_8c_a1c8743dd275cb9c0f81878862c7e3798}{opal\+\_\+buffer\+\_\+construct}, opal\+\_\+buffer\+\_\+destruct)}\label{dss__open__close_8c_a928525aecf36bbcaa7476ab0975d0839}

\item 
\hypertarget{dss__open__close_8c_a57de5b1d286b42fcf0317463c0d89f95}{static void {\bfseries opal\+\_\+dss\+\_\+type\+\_\+info\+\_\+construct} (\hyperlink{structopal__dss__type__info__t}{opal\+\_\+dss\+\_\+type\+\_\+info\+\_\+t} $\ast$obj)}\label{dss__open__close_8c_a57de5b1d286b42fcf0317463c0d89f95}

\item 
\hypertarget{dss__open__close_8c_a4ad2b321e6b061b7d69ef7e8ea32b254}{static void {\bfseries opal\+\_\+dss\+\_\+type\+\_\+info\+\_\+destruct} (\hyperlink{structopal__dss__type__info__t}{opal\+\_\+dss\+\_\+type\+\_\+info\+\_\+t} $\ast$obj)}\label{dss__open__close_8c_a4ad2b321e6b061b7d69ef7e8ea32b254}

\item 
\hypertarget{dss__open__close_8c_a6231658da722765769f8f63491fe5572}{{\bfseries O\+B\+J\+\_\+\+C\+L\+A\+S\+S\+\_\+\+I\+N\+S\+T\+A\+N\+C\+E} (\hyperlink{structopal__dss__type__info__t}{opal\+\_\+dss\+\_\+type\+\_\+info\+\_\+t}, \hyperlink{structopal__object__t}{opal\+\_\+object\+\_\+t}, opal\+\_\+dss\+\_\+type\+\_\+info\+\_\+construct, opal\+\_\+dss\+\_\+type\+\_\+info\+\_\+destruct)}\label{dss__open__close_8c_a6231658da722765769f8f63491fe5572}

\item 
\hypertarget{dss__open__close_8c_a583b716168fed1c6b30543ee1a16724b}{static void {\bfseries opal\+\_\+pstat\+\_\+construct} (\hyperlink{structopal__pstats__t}{opal\+\_\+pstats\+\_\+t} $\ast$obj)}\label{dss__open__close_8c_a583b716168fed1c6b30543ee1a16724b}

\item 
\hypertarget{dss__open__close_8c_a58e4501ac8ee00134e5bbdcc09d756c9}{{\bfseries O\+B\+J\+\_\+\+C\+L\+A\+S\+S\+\_\+\+I\+N\+S\+T\+A\+N\+C\+E} (\hyperlink{structopal__pstats__t}{opal\+\_\+pstats\+\_\+t}, \hyperlink{structopal__list__item__t}{opal\+\_\+list\+\_\+item\+\_\+t}, opal\+\_\+pstat\+\_\+construct, N\+U\+L\+L)}\label{dss__open__close_8c_a58e4501ac8ee00134e5bbdcc09d756c9}

\item 
\hypertarget{dss__open__close_8c_a14aa641a2cb8d68f291b568fb4962d4b}{static void {\bfseries opal\+\_\+node\+\_\+stats\+\_\+construct} (\hyperlink{structopal__node__stats__t}{opal\+\_\+node\+\_\+stats\+\_\+t} $\ast$obj)}\label{dss__open__close_8c_a14aa641a2cb8d68f291b568fb4962d4b}

\item 
\hypertarget{dss__open__close_8c_ad57d533a43507766091a588e64e8d8d9}{{\bfseries O\+B\+J\+\_\+\+C\+L\+A\+S\+S\+\_\+\+I\+N\+S\+T\+A\+N\+C\+E} (\hyperlink{structopal__node__stats__t}{opal\+\_\+node\+\_\+stats\+\_\+t}, \hyperlink{structopal__object__t}{opal\+\_\+object\+\_\+t}, opal\+\_\+node\+\_\+stats\+\_\+construct, N\+U\+L\+L)}\label{dss__open__close_8c_ad57d533a43507766091a588e64e8d8d9}

\item 
int \hyperlink{dss__open__close_8c_af57efcce3f55cf3b183367efa7dc6703}{opal\+\_\+dss\+\_\+open} (void)
\begin{DoxyCompactList}\small\item\em D\+S\+S initialization function. \end{DoxyCompactList}\item 
\hypertarget{dss__open__close_8c_aeedc78ac5bad6d6e58414ee7daa39f94}{int \hyperlink{dss__open__close_8c_aeedc78ac5bad6d6e58414ee7daa39f94}{opal\+\_\+dss\+\_\+close} (void)}\label{dss__open__close_8c_aeedc78ac5bad6d6e58414ee7daa39f94}

\begin{DoxyCompactList}\small\item\em D\+S\+S finalize function. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Variables}
\begin{DoxyCompactItemize}
\item 
\hypertarget{dss__open__close_8c_aa181fc750bc0283ca1c3d3b4b9d65e45}{bool \hyperlink{dss__open__close_8c_aa181fc750bc0283ca1c3d3b4b9d65e45}{opal\+\_\+dss\+\_\+initialized} = false}\label{dss__open__close_8c_aa181fc750bc0283ca1c3d3b4b9d65e45}

\begin{DoxyCompactList}\small\item\em globals \end{DoxyCompactList}\item 
\hypertarget{dss__open__close_8c_a475c761406dad9fc5aff408ddd74c8d3}{int {\bfseries opal\+\_\+dss\+\_\+verbose} = -\/1}\label{dss__open__close_8c_a475c761406dad9fc5aff408ddd74c8d3}

\item 
\hypertarget{dss__open__close_8c_a987fe0f50a9e6686cca91e57a05be008}{int {\bfseries opal\+\_\+dss\+\_\+initial\+\_\+size}}\label{dss__open__close_8c_a987fe0f50a9e6686cca91e57a05be008}

\item 
\hypertarget{dss__open__close_8c_a34c4835f3ca5b9c4bbeced0bd6fef75f}{int {\bfseries opal\+\_\+dss\+\_\+threshold\+\_\+size}}\label{dss__open__close_8c_a34c4835f3ca5b9c4bbeced0bd6fef75f}

\item 
\hypertarget{dss__open__close_8c_a8d25f516507b66c56f1a5ca01c06aecf}{\hyperlink{structopal__pointer__array__t}{opal\+\_\+pointer\+\_\+array\+\_\+t} {\bfseries opal\+\_\+dss\+\_\+types}}\label{dss__open__close_8c_a8d25f516507b66c56f1a5ca01c06aecf}

\item 
\hypertarget{dss__open__close_8c_a9a97b465ecc1d907a3567d5852b4e383}{opal\+\_\+data\+\_\+type\+\_\+t {\bfseries opal\+\_\+dss\+\_\+num\+\_\+reg\+\_\+types}}\label{dss__open__close_8c_a9a97b465ecc1d907a3567d5852b4e383}

\item 
\hypertarget{dss__open__close_8c_a54ebec74c60049a66dc00a32babd2349}{\hyperlink{dss__types_8h_ad645f1df9c8651360a423632a65260f9}{opal\+\_\+dss\+\_\+buffer\+\_\+type\+\_\+t} {\bfseries default\+\_\+buf\+\_\+type}}\label{dss__open__close_8c_a54ebec74c60049a66dc00a32babd2349}

\item 
\hyperlink{structopal__dss__t}{opal\+\_\+dss\+\_\+t} {\bfseries opal\+\_\+dss}
\end{DoxyCompactItemize}


\subsection{Function Documentation}
\hypertarget{dss__open__close_8c_a1c8743dd275cb9c0f81878862c7e3798}{\index{dss\+\_\+open\+\_\+close.\+c@{dss\+\_\+open\+\_\+close.\+c}!opal\+\_\+buffer\+\_\+construct@{opal\+\_\+buffer\+\_\+construct}}
\index{opal\+\_\+buffer\+\_\+construct@{opal\+\_\+buffer\+\_\+construct}!dss\+\_\+open\+\_\+close.\+c@{dss\+\_\+open\+\_\+close.\+c}}
\subsubsection[{opal\+\_\+buffer\+\_\+construct}]{\setlength{\rightskip}{0pt plus 5cm}static void opal\+\_\+buffer\+\_\+construct (
\begin{DoxyParamCaption}
\item[{{\bf opal\+\_\+buffer\+\_\+t} $\ast$}]{buffer}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [static]}}}\label{dss__open__close_8c_a1c8743dd275cb9c0f81878862c7e3798}
set the default buffer type 

References opal\+\_\+buffer\+\_\+t\+::base\+\_\+ptr, opal\+\_\+buffer\+\_\+t\+::bytes\+\_\+allocated, opal\+\_\+buffer\+\_\+t\+::bytes\+\_\+used, opal\+\_\+buffer\+\_\+t\+::pack\+\_\+ptr, opal\+\_\+buffer\+\_\+t\+::type, and opal\+\_\+buffer\+\_\+t\+::unpack\+\_\+ptr.

\hypertarget{dss__open__close_8c_a34c82bcd4524ed9e48cf4198933e2145}{\index{dss\+\_\+open\+\_\+close.\+c@{dss\+\_\+open\+\_\+close.\+c}!opal\+\_\+data\+\_\+value\+\_\+construct@{opal\+\_\+data\+\_\+value\+\_\+construct}}
\index{opal\+\_\+data\+\_\+value\+\_\+construct@{opal\+\_\+data\+\_\+value\+\_\+construct}!dss\+\_\+open\+\_\+close.\+c@{dss\+\_\+open\+\_\+close.\+c}}
\subsubsection[{opal\+\_\+data\+\_\+value\+\_\+construct}]{\setlength{\rightskip}{0pt plus 5cm}static void opal\+\_\+data\+\_\+value\+\_\+construct (
\begin{DoxyParamCaption}
\item[{{\bf opal\+\_\+dss\+\_\+value\+\_\+t} $\ast$}]{ptr}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [static]}}}\label{dss__open__close_8c_a34c82bcd4524ed9e48cf4198933e2145}


Object constructors, destructors, and instantiations. 

Data Value 

References O\+P\+A\+L\+\_\+\+U\+N\+D\+E\+F.

\hypertarget{dss__open__close_8c_af57efcce3f55cf3b183367efa7dc6703}{\index{dss\+\_\+open\+\_\+close.\+c@{dss\+\_\+open\+\_\+close.\+c}!opal\+\_\+dss\+\_\+open@{opal\+\_\+dss\+\_\+open}}
\index{opal\+\_\+dss\+\_\+open@{opal\+\_\+dss\+\_\+open}!dss\+\_\+open\+\_\+close.\+c@{dss\+\_\+open\+\_\+close.\+c}}
\subsubsection[{opal\+\_\+dss\+\_\+open}]{\setlength{\rightskip}{0pt plus 5cm}int opal\+\_\+dss\+\_\+open (
\begin{DoxyParamCaption}
\item[{void}]{}
\end{DoxyParamCaption}
)}}\label{dss__open__close_8c_af57efcce3f55cf3b183367efa7dc6703}


D\+S\+S initialization function. 

In dynamic libraries, declared objects and functions don't get loaded until called. We need to ensure that the opal\+\_\+dss function structure gets loaded, so we provide an \char`\"{}open\char`\"{} call that is executed as part of the program startup. set the default buffer type. If we are in debug mode, then we default to fully described buffers. Otherwise, we default to non-\/described for brevity and performance

References mca\+\_\+base\+\_\+param\+\_\+lookup\+\_\+int(), mca\+\_\+base\+\_\+param\+\_\+register\+\_\+int(), O\+B\+J\+\_\+\+C\+O\+N\+S\+T\+R\+U\+C\+T, O\+P\+A\+L\+\_\+\+B\+O\+O\+L, O\+P\+A\+L\+\_\+\+B\+Y\+T\+E, O\+P\+A\+L\+\_\+\+B\+Y\+T\+E\+\_\+\+O\+B\+J\+E\+C\+T, O\+P\+A\+L\+\_\+\+D\+A\+T\+A\+\_\+\+T\+Y\+P\+E, O\+P\+A\+L\+\_\+\+D\+A\+T\+A\+\_\+\+V\+A\+L\+U\+E, opal\+\_\+dss\+\_\+initialized, O\+P\+A\+L\+\_\+\+I\+N\+T, O\+P\+A\+L\+\_\+\+I\+N\+T16, O\+P\+A\+L\+\_\+\+I\+N\+T32, O\+P\+A\+L\+\_\+\+I\+N\+T64, O\+P\+A\+L\+\_\+\+I\+N\+T8, O\+P\+A\+L\+\_\+\+N\+O\+D\+E\+\_\+\+S\+T\+A\+T, O\+P\+A\+L\+\_\+\+N\+U\+L\+L, O\+P\+A\+L\+\_\+\+P\+I\+D, opal\+\_\+pointer\+\_\+array\+\_\+init(), O\+P\+A\+L\+\_\+\+P\+S\+T\+A\+T, O\+P\+A\+L\+\_\+\+S\+I\+Z\+E, O\+P\+A\+L\+\_\+\+S\+T\+R\+I\+N\+G, O\+P\+A\+L\+\_\+\+U\+I\+N\+T, O\+P\+A\+L\+\_\+\+U\+I\+N\+T16, O\+P\+A\+L\+\_\+\+U\+I\+N\+T32, O\+P\+A\+L\+\_\+\+U\+I\+N\+T64, and O\+P\+A\+L\+\_\+\+U\+I\+N\+T8.



Referenced by opal\+\_\+init\+\_\+util().



\subsection{Variable Documentation}
\hypertarget{dss__open__close_8c_a9df096ba7f84e66f27ada08b72e887e3}{\index{dss\+\_\+open\+\_\+close.\+c@{dss\+\_\+open\+\_\+close.\+c}!opal\+\_\+dss@{opal\+\_\+dss}}
\index{opal\+\_\+dss@{opal\+\_\+dss}!dss\+\_\+open\+\_\+close.\+c@{dss\+\_\+open\+\_\+close.\+c}}
\subsubsection[{opal\+\_\+dss}]{\setlength{\rightskip}{0pt plus 5cm}{\bf opal\+\_\+dss\+\_\+t} opal\+\_\+dss}}\label{dss__open__close_8c_a9df096ba7f84e66f27ada08b72e887e3}
{\bfseries Initial value\+:}
\begin{DoxyCode}
= \{
    opal\_dss\_set,
    opal\_dss\_get,
    opal\_dss\_set\_buffer\_type,
    opal\_dss\_pack,
    opal\_dss\_unpack,
    opal\_dss\_copy,
    opal\_dss\_compare,
    opal\_dss\_size,
    opal\_dss\_print,
    opal\_dss\_release,
    opal\_dss\_peek,
    opal\_dss\_unload,
    opal\_dss\_load,
    opal\_dss\_copy\_payload,
    opal\_dss\_register,
    opal\_dss\_lookup\_data\_type,
    opal\_dss\_dump\_data\_types,
    opal\_dss\_dump
\}
\end{DoxyCode}
