<?xml version='1.0' encoding='UTF-8' standalone='no'?>
<doxygen xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="compound.xsd" version="1.8.14">
  <compounddef id="class_cis_input" kind="class" language="C++" prot="public">
    <compoundname>CisInput</compoundname>
    <derivedcompoundref refid="class_cis_ascii_file_input" prot="public" virt="non-virtual">CisAsciiFileInput</derivedcompoundref>
    <derivedcompoundref refid="class_cis_obj_input" prot="public" virt="non-virtual">CisObjInput</derivedcompoundref>
    <derivedcompoundref refid="class_cis_ply_input" prot="public" virt="non-virtual">CisPlyInput</derivedcompoundref>
    <includes refid="_cis_interface_8hpp" local="no">CisInterface.hpp</includes>
      <sectiondef kind="private-attrib">
      <memberdef kind="variable" id="class_cis_input_1a2e19f15c0a05515264929f60fbe64121" prot="private" static="no" mutable="no">
        <type>cisInput_t</type>
        <definition>cisInput_t CisInput::_pi</definition>
        <argsstring></argsstring>
        <name>_pi</name>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/root/cis_interface/cis_interface/cis_interface/interface/CisInterface.hpp" line="17" column="1" bodyfile="/root/cis_interface/cis_interface/cis_interface/interface/CisInterface.hpp" bodystart="17" bodyend="-1"/>
      </memberdef>
      </sectiondef>
      <sectiondef kind="public-func">
      <memberdef kind="function" id="class_cis_input_1a5a81811ecb4ea9b3d786ea60522cdcb7" prot="public" static="no" const="no" explicit="no" inline="yes" virt="non-virtual">
        <type></type>
        <definition>CisInput::CisInput</definition>
        <argsstring>(const char *name)</argsstring>
        <name>CisInput</name>
        <param>
          <type>const char *</type>
          <declname>name</declname>
        </param>
        <briefdescription>
<para>Constructor for <ref refid="class_cis_input" kindref="compound">CisInput</ref>. </para>        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">name</parametername>
</parameternamelist>
<parameterdescription>
<para>constant character pointer to name of input queue. This should be the argument to an input driver in the yaml specification file. </para></parameterdescription>
</parameteritem>
</parameterlist>
</para>        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/root/cis_interface/cis_interface/cis_interface/interface/CisInterface.hpp" line="25" column="1" bodyfile="/root/cis_interface/cis_interface/cis_interface/interface/CisInterface.hpp" bodystart="25" bodyend="25"/>
      </memberdef>
      <memberdef kind="function" id="class_cis_input_1a9e6a005bec40db9eacc4bd7c8051c112" prot="public" static="no" const="no" explicit="no" inline="yes" virt="non-virtual">
        <type></type>
        <definition>CisInput::CisInput</definition>
        <argsstring>(cisInput_t x)</argsstring>
        <name>CisInput</name>
        <param>
          <type>cisInput_t</type>
          <declname>x</declname>
        </param>
        <briefdescription>
<para>Empty constructor for inheritance. </para>        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/root/cis_interface/cis_interface/cis_interface/interface/CisInterface.hpp" line="28" column="1" bodyfile="/root/cis_interface/cis_interface/cis_interface/interface/CisInterface.hpp" bodystart="28" bodyend="28"/>
      </memberdef>
      <memberdef kind="function" id="class_cis_input_1ad39b94867de8741606bef7f1acdcbfd2" prot="public" static="no" const="no" explicit="no" inline="yes" virt="non-virtual">
        <type></type>
        <definition>CisInput::CisInput</definition>
        <argsstring>(const char *name, const char *fmt)</argsstring>
        <name>CisInput</name>
        <param>
          <type>const char *</type>
          <declname>name</declname>
        </param>
        <param>
          <type>const char *</type>
          <declname>fmt</declname>
        </param>
        <briefdescription>
<para>Constructor for <ref refid="class_cis_input" kindref="compound">CisInput</ref> with format. </para>        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">name</parametername>
</parameternamelist>
<parameterdescription>
<para>constant character pointer to name of input queue. This should be the argument to an input driver in the yaml specification file. </para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">fmt</parametername>
</parameternamelist>
<parameterdescription>
<para>character pointer to format string for parsing messages. </para></parameterdescription>
</parameteritem>
</parameterlist>
</para>        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/root/cis_interface/cis_interface/cis_interface/interface/CisInterface.hpp" line="36" column="1" bodyfile="/root/cis_interface/cis_interface/cis_interface/interface/CisInterface.hpp" bodystart="36" bodyend="36"/>
      </memberdef>
      <memberdef kind="function" id="class_cis_input_1af098d058831c5aeb24c785daf322d0d3" prot="public" static="no" const="no" explicit="no" inline="yes" virt="non-virtual">
        <type>void</type>
        <definition>void CisInput::_destroy_pi</definition>
        <argsstring>()</argsstring>
        <name>_destroy_pi</name>
        <briefdescription>
<para>Alias to allow freeing of underlying C struct at the class level. </para>        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/root/cis_interface/cis_interface/cis_interface/interface/CisInterface.hpp" line="41" column="1" bodyfile="/root/cis_interface/cis_interface/cis_interface/interface/CisInterface.hpp" bodystart="41" bodyend="41"/>
      </memberdef>
      <memberdef kind="function" id="class_cis_input_1a66ff037c37e380abd82e107980f0af44" prot="public" static="no" const="no" explicit="no" inline="yes" virt="non-virtual">
        <type></type>
        <definition>CisInput::~CisInput</definition>
        <argsstring>()</argsstring>
        <name>~CisInput</name>
        <briefdescription>
<para>Destructor for <ref refid="class_cis_input" kindref="compound">CisInput</ref>. See cis_free in <ref refid="_cis_interface_8h_source" kindref="compound">CisInterface.h</ref> for details. </para>        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/root/cis_interface/cis_interface/cis_interface/interface/CisInterface.hpp" line="47" column="1" bodyfile="/root/cis_interface/cis_interface/cis_interface/interface/CisInterface.hpp" bodystart="47" bodyend="47"/>
      </memberdef>
      <memberdef kind="function" id="class_cis_input_1a2b560759fbd797db1dc049e886ce72e5" prot="public" static="no" const="no" explicit="no" inline="yes" virt="non-virtual">
        <type>cisInput_t</type>
        <definition>cisInput_t CisInput::pi</definition>
        <argsstring>()</argsstring>
        <name>pi</name>
        <briefdescription>
<para>Return the cisInput_t structure. </para>        </briefdescription>
        <detaileddescription>
<para><simplesect kind="return"><para>cisInput_t structure underlying the class. </para></simplesect>
</para>        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/root/cis_interface/cis_interface/cis_interface/interface/CisInterface.hpp" line="53" column="1" bodyfile="/root/cis_interface/cis_interface/cis_interface/interface/CisInterface.hpp" bodystart="53" bodyend="55"/>
      </memberdef>
      <memberdef kind="function" id="class_cis_input_1aa05f26dd9d8db09e12da739831637a2a" prot="public" static="no" const="no" explicit="no" inline="yes" virt="non-virtual">
        <type>int</type>
        <definition>int CisInput::recv</definition>
        <argsstring>(char *data, const size_t len)</argsstring>
        <name>recv</name>
        <param>
          <type>char *</type>
          <declname>data</declname>
        </param>
        <param>
          <type>const size_t</type>
          <declname>len</declname>
        </param>
        <briefdescription>
<para>Receive a message shorter than CIS_MSG_MAX from the input queue. See cis_recv in <ref refid="_cis_interface_8h_source" kindref="compound">CisInterface.h</ref> for additional details. </para>        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="out">data</parametername>
</parameternamelist>
<parameterdescription>
<para>character pointer to allocated buffer where the message should be saved. </para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">len</parametername>
</parameternamelist>
<parameterdescription>
<para>size_t length of the allocated message buffer in bytes. </para></parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>int -1 if message could not be received. Length of the received message if message was received. </para></simplesect>
</para>        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/root/cis_interface/cis_interface/cis_interface/interface/CisInterface.hpp" line="66" column="1" bodyfile="/root/cis_interface/cis_interface/cis_interface/interface/CisInterface.hpp" bodystart="66" bodyend="66"/>
      </memberdef>
      <memberdef kind="function" id="class_cis_input_1a387134ab4f750a06654946d4b92d412d" prot="public" static="no" const="no" explicit="no" inline="yes" virt="non-virtual">
        <type>int</type>
        <definition>int CisInput::recv</definition>
        <argsstring>(const int nargs,...)</argsstring>
        <name>recv</name>
        <param>
          <type>const int</type>
          <declname>nargs</declname>
        </param>
        <param>
          <type>...</type>
        </param>
        <briefdescription>
<para>Receive and parse a message shorter than CIS_MSG_MAX from the input queue. See cisRecv from <ref refid="_cis_interface_8h_source" kindref="compound">CisInterface.h</ref> for details. </para>        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">nargs</parametername>
</parameternamelist>
<parameterdescription>
<para>int Number of arguments being passed. </para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">...</parametername>
</parameternamelist>
<parameterdescription>
<para>mixed arguments that should be assigned parameters extracted using the format string. Since these will be assigned, they should be pointers to memory that has already been allocated. </para></parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>integer specifying if the receive was succesful. Values &gt;= 0 indicate success. </para></simplesect>
</para>        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/root/cis_interface/cis_interface/cis_interface/interface/CisInterface.hpp" line="78" column="1" bodyfile="/root/cis_interface/cis_interface/cis_interface/interface/CisInterface.hpp" bodystart="78" bodyend="89"/>
      </memberdef>
      <memberdef kind="function" id="class_cis_input_1a962f5ebcac9d8b70fe3cd907da6dd3a9" prot="public" static="no" const="no" explicit="no" inline="yes" virt="non-virtual">
        <type>int</type>
        <definition>int CisInput::recv_nolimit</definition>
        <argsstring>(char **data, const size_t len)</argsstring>
        <name>recv_nolimit</name>
        <param>
          <type>char **</type>
          <declname>data</declname>
        </param>
        <param>
          <type>const size_t</type>
          <declname>len</declname>
        </param>
        <briefdescription>
<para>Receive a message larger than CIS_MSG_MAX from the input queue. See cis_recv_nolimit in <ref refid="_cis_interface_8h_source" kindref="compound">CisInterface.h</ref> for additional details. </para>        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="out">data</parametername>
</parameternamelist>
<parameterdescription>
<para>character pointer to allocated buffer where the message should be saved. </para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">len</parametername>
</parameternamelist>
<parameterdescription>
<para>size_t length of the allocated message buffer in bytes. </para></parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>int -1 if message could not be received. Length of the received message if message was received. </para></simplesect>
</para>        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/root/cis_interface/cis_interface/cis_interface/interface/CisInterface.hpp" line="100" column="1" bodyfile="/root/cis_interface/cis_interface/cis_interface/interface/CisInterface.hpp" bodystart="100" bodyend="102"/>
      </memberdef>
      <memberdef kind="function" id="class_cis_input_1aa78610915e128dc1ed0d234271d2d656" prot="public" static="no" const="no" explicit="no" inline="yes" virt="non-virtual">
        <type>int</type>
        <definition>int CisInput::recv_nolimit</definition>
        <argsstring>(const int nargs,...)</argsstring>
        <name>recv_nolimit</name>
        <param>
          <type>const int</type>
          <declname>nargs</declname>
        </param>
        <param>
          <type>...</type>
        </param>
        <briefdescription>
<para>Receive and parse a message larger than CIS_MSG_MAX from the input queue. See cisRecv_nolimit from <ref refid="_cis_interface_8h_source" kindref="compound">CisInterface.h</ref> for details. </para>        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">nargs</parametername>
</parameternamelist>
<parameterdescription>
<para>int Number of arguments being passed. </para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">...</parametername>
</parameternamelist>
<parameterdescription>
<para>mixed arguments that should be assigned parameters extracted using the format string. Since these will be assigned, they should be pointers to memory that has already been allocated. </para></parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>integer specifying if the receive was succesful. Values &gt;= 0 indicate success. </para></simplesect>
</para>        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/root/cis_interface/cis_interface/cis_interface/interface/CisInterface.hpp" line="114" column="1" bodyfile="/root/cis_interface/cis_interface/cis_interface/interface/CisInterface.hpp" bodystart="114" bodyend="125"/>
      </memberdef>
      </sectiondef>
    <briefdescription>
<para>Flag for checking if <ref refid="_cis_interface_8hpp_source" kindref="compound">CisInterface.hpp</ref> has already been included. </para>    </briefdescription>
    <detaileddescription>
<para>C++ interface to cisInput_t functionality.</para><para>The <ref refid="class_cis_input" kindref="compound">CisInput</ref> class is a basic wrapper around the C cisInput_t structure and associated functions from the <ref refid="_cis_interface_8h_source" kindref="compound">CisInterface.h</ref> header. It provides the user with C++ style access to basic input via an IPC queue. </para>    </detaileddescription>
    <inheritancegraph>
      <node id="84">
        <label>CisAsciiFileInput</label>
        <link refid="class_cis_ascii_file_input"/>
        <childnode refid="83" relation="public-inheritance">
        </childnode>
      </node>
      <node id="86">
        <label>CisAsciiArrayInput_local</label>
        <link refid="class_cis_ascii_array_input__local"/>
        <childnode refid="84" relation="public-inheritance">
        </childnode>
      </node>
      <node id="89">
        <label>CisAsciiTableInput_local</label>
        <link refid="class_cis_ascii_table_input__local"/>
        <childnode refid="84" relation="public-inheritance">
        </childnode>
      </node>
      <node id="91">
        <label>CisPlyInput</label>
        <link refid="class_cis_ply_input"/>
        <childnode refid="83" relation="public-inheritance">
        </childnode>
      </node>
      <node id="90">
        <label>CisObjInput</label>
        <link refid="class_cis_obj_input"/>
        <childnode refid="83" relation="public-inheritance">
        </childnode>
      </node>
      <node id="87">
        <label>CisAsciiFileInput_local</label>
        <link refid="class_cis_ascii_file_input__local"/>
        <childnode refid="84" relation="public-inheritance">
        </childnode>
      </node>
      <node id="85">
        <label>CisAsciiArrayInput</label>
        <link refid="class_cis_ascii_array_input"/>
        <childnode refid="84" relation="public-inheritance">
        </childnode>
      </node>
      <node id="88">
        <label>CisAsciiTableInput</label>
        <link refid="class_cis_ascii_table_input"/>
        <childnode refid="84" relation="public-inheritance">
        </childnode>
      </node>
      <node id="83">
        <label>CisInput</label>
        <link refid="class_cis_input"/>
      </node>
    </inheritancegraph>
    <location file="/root/cis_interface/cis_interface/cis_interface/interface/CisInterface.hpp" line="16" column="1" bodyfile="/root/cis_interface/cis_interface/cis_interface/interface/CisInterface.hpp" bodystart="16" bodyend="127"/>
    <listofallmembers>
      <member refid="class_cis_input_1af098d058831c5aeb24c785daf322d0d3" prot="public" virt="non-virtual"><scope>CisInput</scope><name>_destroy_pi</name></member>
      <member refid="class_cis_input_1a2e19f15c0a05515264929f60fbe64121" prot="private" virt="non-virtual"><scope>CisInput</scope><name>_pi</name></member>
      <member refid="class_cis_input_1a5a81811ecb4ea9b3d786ea60522cdcb7" prot="public" virt="non-virtual"><scope>CisInput</scope><name>CisInput</name></member>
      <member refid="class_cis_input_1a9e6a005bec40db9eacc4bd7c8051c112" prot="public" virt="non-virtual"><scope>CisInput</scope><name>CisInput</name></member>
      <member refid="class_cis_input_1ad39b94867de8741606bef7f1acdcbfd2" prot="public" virt="non-virtual"><scope>CisInput</scope><name>CisInput</name></member>
      <member refid="class_cis_input_1a2b560759fbd797db1dc049e886ce72e5" prot="public" virt="non-virtual"><scope>CisInput</scope><name>pi</name></member>
      <member refid="class_cis_input_1aa05f26dd9d8db09e12da739831637a2a" prot="public" virt="non-virtual"><scope>CisInput</scope><name>recv</name></member>
      <member refid="class_cis_input_1a387134ab4f750a06654946d4b92d412d" prot="public" virt="non-virtual"><scope>CisInput</scope><name>recv</name></member>
      <member refid="class_cis_input_1a962f5ebcac9d8b70fe3cd907da6dd3a9" prot="public" virt="non-virtual"><scope>CisInput</scope><name>recv_nolimit</name></member>
      <member refid="class_cis_input_1aa78610915e128dc1ed0d234271d2d656" prot="public" virt="non-virtual"><scope>CisInput</scope><name>recv_nolimit</name></member>
      <member refid="class_cis_input_1a66ff037c37e380abd82e107980f0af44" prot="public" virt="non-virtual"><scope>CisInput</scope><name>~CisInput</name></member>
    </listofallmembers>
  </compounddef>
</doxygen>
