<?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="regex__win32_8h" kind="file" language="C++">
    <compoundname>regex_win32.h</compoundname>
    <includedby refid="regex__win32_8cpp" local="yes">/root/cis_interface/cis_interface/cis_interface/regex/regex_win32.cpp</includedby>
      <sectiondef kind="define">
      <memberdef kind="define" id="regex__win32_8h_1a95e1d92b2619a326b2e86600f3d23100" prot="public" static="no">
        <name>EXTERNC</name>
        <briefdescription>
<para>Flag for checking if regex_win32 has already been included. </para>        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/root/cis_interface/cis_interface/cis_interface/regex/regex_win32.h" line="8" column="10" bodyfile="/root/cis_interface/cis_interface/cis_interface/regex/regex_win32.h" bodystart="8" bodyend="-1"/>
      </memberdef>
      </sectiondef>
      <sectiondef kind="func">
      <memberdef kind="function" id="regex__win32_8h_1a479f02844072d0be3a9e9714cf98dbc5" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>EXTERNC int</type>
        <definition>EXTERNC int count_matches</definition>
        <argsstring>(const char *regex_text, const char *to_match)</argsstring>
        <name>count_matches</name>
        <param>
          <type>const char *</type>
          <declname>regex_text</declname>
        </param>
        <param>
          <type>const char *</type>
          <declname>to_match</declname>
        </param>
        <briefdescription>
<para>Count the number of times a regular expression is matched in a string. </para>        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">regex_text</parametername>
</parameternamelist>
<parameterdescription>
<para>constant character pointer to string that should be compiled into a regex. </para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">to_match</parametername>
</parameternamelist>
<parameterdescription>
<para>constant character pointer to string that should be checked for matches. </para></parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>int Number of matches found. -1 is returned if the regex could not be compiled. </para></simplesect>
</para>        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/root/cis_interface/cis_interface/cis_interface/regex/regex_win32.h" line="11" column="1" bodyfile="/root/cis_interface/cis_interface/cis_interface/regex/regex_win32.cpp" bodystart="19" bodyend="31"/>
      </memberdef>
      <memberdef kind="function" id="regex__win32_8h_1a8fc29f9517ee818015dd37049ca6c629" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>EXTERNC int</type>
        <definition>EXTERNC int find_matches</definition>
        <argsstring>(const char *regex_text, const char *to_match, size_t **sind, size_t **eind)</argsstring>
        <name>find_matches</name>
        <param>
          <type>const char *</type>
          <declname>regex_text</declname>
        </param>
        <param>
          <type>const char *</type>
          <declname>to_match</declname>
        </param>
        <param>
          <type>size_t **</type>
          <declname>sind</declname>
        </param>
        <param>
          <type>size_t **</type>
          <declname>eind</declname>
        </param>
        <briefdescription>
<para>Find first match to regex and any sub-matches. </para>        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">regex_text</parametername>
</parameternamelist>
<parameterdescription>
<para>constant character pointer to string that should be compiled into a regex. </para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">to_match</parametername>
</parameternamelist>
<parameterdescription>
<para>constant character pointer to string that should be checked for matches. </para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">sind</parametername>
</parameternamelist>
<parameterdescription>
<para>size_t ** indices of where matches begin. </para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">eind</parametername>
</parameternamelist>
<parameterdescription>
<para>size_t ** indices of where matches ends. </para></parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>int Number of matches/submatches found. -1 is returned if the regex could not be compiled. </para></simplesect>
</para>        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/root/cis_interface/cis_interface/cis_interface/regex/regex_win32.h" line="12" column="1" bodyfile="/root/cis_interface/cis_interface/cis_interface/regex/regex_win32.cpp" bodystart="45" bodyend="65"/>
      </memberdef>
      <memberdef kind="function" id="regex__win32_8h_1ab4af6b20a5b831150b88c0f959e8a164" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>EXTERNC int</type>
        <definition>EXTERNC int find_match</definition>
        <argsstring>(const char *regex_text, const char *to_match, size_t *sind, size_t *eind)</argsstring>
        <name>find_match</name>
        <param>
          <type>const char *</type>
          <declname>regex_text</declname>
        </param>
        <param>
          <type>const char *</type>
          <declname>to_match</declname>
        </param>
        <param>
          <type>size_t *</type>
          <declname>sind</declname>
        </param>
        <param>
          <type>size_t *</type>
          <declname>eind</declname>
        </param>
        <briefdescription>
<para>Find first match to regex. </para>        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">regex_text</parametername>
</parameternamelist>
<parameterdescription>
<para>constant character pointer to string that should be compiled into a regex. </para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">to_match</parametername>
</parameternamelist>
<parameterdescription>
<para>constant character pointer to string that should be checked for matches. </para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">sind</parametername>
</parameternamelist>
<parameterdescription>
<para>size_t index where match begins. </para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">eind</parametername>
</parameternamelist>
<parameterdescription>
<para>size_t index where match ends. </para></parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>int Number of matches found. -1 is returned if the regex could not be compiled. </para></simplesect>
</para>        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/root/cis_interface/cis_interface/cis_interface/regex/regex_win32.h" line="14" column="1" bodyfile="/root/cis_interface/cis_interface/cis_interface/regex/regex_win32.cpp" bodystart="79" bodyend="94"/>
      </memberdef>
      <memberdef kind="function" id="regex__win32_8h_1a377d13633ac01bb50d22bf9686a300ad" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>EXTERNC int</type>
        <definition>EXTERNC int regex_replace_nosub</definition>
        <argsstring>(char *buf, const size_t len_buf, const char *re, const char *rp, const size_t nreplace)</argsstring>
        <name>regex_replace_nosub</name>
        <param>
          <type>char *</type>
          <declname>buf</declname>
        </param>
        <param>
          <type>const size_t</type>
          <declname>len_buf</declname>
        </param>
        <param>
          <type>const char *</type>
          <declname>re</declname>
        </param>
        <param>
          <type>const char *</type>
          <declname>rp</declname>
        </param>
        <param>
          <type>const size_t</type>
          <declname>nreplace</declname>
        </param>
        <briefdescription>
<para>Make a replacement of regex matches, ignoring captured substrings. </para>        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="inout">buf</parametername>
</parameternamelist>
<parameterdescription>
<para>Characer pointer to buffer that replacements should be made to. </para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">len_buf</parametername>
</parameternamelist>
<parameterdescription>
<para>const size_t length of buf. </para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">re</parametername>
</parameternamelist>
<parameterdescription>
<para>Constant character pointer to regex string. </para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">rp</parametername>
</parameternamelist>
<parameterdescription>
<para>Constant character pointer to the replacement text. </para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">nreplace</parametername>
</parameternamelist>
<parameterdescription>
<para>Constant size_t number of replacements to make. If 0, all matches are replaced. </para></parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>int -1 on failure if the regex could not be compiled or the buffer is not big enough to contain the result. If succesful, the new length of buf is returned. </para></simplesect>
</para>        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/root/cis_interface/cis_interface/cis_interface/regex/regex_win32.h" line="16" column="1" bodyfile="/root/cis_interface/cis_interface/cis_interface/regex/regex_win32.cpp" bodystart="110" bodyend="158"/>
      </memberdef>
      <memberdef kind="function" id="regex__win32_8h_1ac8869b660d3a0dd9a514e0e67739f35f" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>EXTERNC int</type>
        <definition>EXTERNC int get_subrefs</definition>
        <argsstring>(const char *buf, size_t **refs)</argsstring>
        <name>get_subrefs</name>
        <param>
          <type>const char *</type>
          <declname>buf</declname>
        </param>
        <param>
          <type>size_t **</type>
          <declname>refs</declname>
        </param>
        <briefdescription>
<para>Extract substring references from a string. </para>        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">buf</parametername>
</parameternamelist>
<parameterdescription>
<para>Constant character pointer to buffer that references should be extracted from. </para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">refs</parametername>
</parameternamelist>
<parameterdescription>
<para>Pointer to pointer to memory where reference numbers should be stored. This function will reallocate it to fit the number of references returned. (Should be freed by calling program.) </para></parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>int Number of refs found. -1 indicates an error. </para></simplesect>
</para>        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/root/cis_interface/cis_interface/cis_interface/regex/regex_win32.h" line="19" column="1" bodyfile="/root/cis_interface/cis_interface/cis_interface/regex/regex_win32.cpp" bodystart="169" bodyend="238"/>
      </memberdef>
      <memberdef kind="function" id="regex__win32_8h_1a301f07ddfd9c896f7910b69c34cd2d96" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>EXTERNC int</type>
        <definition>EXTERNC int regex_replace_sub</definition>
        <argsstring>(char *buf, const size_t len_buf, const char *re, const char *rp, const size_t nreplace)</argsstring>
        <name>regex_replace_sub</name>
        <param>
          <type>char *</type>
          <declname>buf</declname>
        </param>
        <param>
          <type>const size_t</type>
          <declname>len_buf</declname>
        </param>
        <param>
          <type>const char *</type>
          <declname>re</declname>
        </param>
        <param>
          <type>const char *</type>
          <declname>rp</declname>
        </param>
        <param>
          <type>const size_t</type>
          <declname>nreplace</declname>
        </param>
        <briefdescription>
<para>Make a replacement of regex matches, allowing for captured substrings. </para>        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="inout">buf</parametername>
</parameternamelist>
<parameterdescription>
<para>Characer pointer to buffer that replacements should be made to. </para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">len_buf</parametername>
</parameternamelist>
<parameterdescription>
<para>const size_t length of buf. </para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">re</parametername>
</parameternamelist>
<parameterdescription>
<para>Constant character pointer to regex string. </para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">rp</parametername>
</parameternamelist>
<parameterdescription>
<para>Constant character pointer to the replacement text. </para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">nreplace</parametername>
</parameternamelist>
<parameterdescription>
<para>Constant size_t number of replacements to make. If 0, all matches are replaced. </para></parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>int -1 on failure if the regex could not be compiled or the buffer is not big enough to contain the result. If succesful, the new length of buf is returned. </para></simplesect>
</para>        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/root/cis_interface/cis_interface/cis_interface/regex/regex_win32.h" line="20" column="1" bodyfile="/root/cis_interface/cis_interface/cis_interface/regex/regex_win32.cpp" bodystart="254" bodyend="338"/>
      </memberdef>
      </sectiondef>
    <briefdescription>
    </briefdescription>
    <detaileddescription>
    </detaileddescription>
    <programlisting>
<codeline lineno="1"></codeline>
<codeline lineno="2"><highlight class="preprocessor">#ifndef<sp/>REGEX_WIN32_H_</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="3"><highlight class="normal"></highlight><highlight class="preprocessor">#define<sp/>REGEX_WIN32_H_</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="4"><highlight class="normal"></highlight></codeline>
<codeline lineno="5"><highlight class="normal"></highlight><highlight class="preprocessor">#ifdef<sp/>__cplusplus</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="6"><highlight class="normal"></highlight><highlight class="preprocessor">#define<sp/>EXTERNC<sp/>extern<sp/>&quot;C&quot;</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="7"><highlight class="normal"></highlight><highlight class="preprocessor">#else</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="8"><highlight class="normal"></highlight><highlight class="preprocessor">#define<sp/>EXTERNC</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="9"><highlight class="normal"></highlight><highlight class="preprocessor">#endif</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="10"><highlight class="normal"></highlight></codeline>
<codeline lineno="11"><highlight class="normal">EXTERNC<sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>count_matches(</highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">char</highlight><highlight class="normal"><sp/>*regex_text,<sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">char</highlight><highlight class="normal"><sp/>*to_match);</highlight></codeline>
<codeline lineno="12"><highlight class="normal">EXTERNC<sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>find_matches(</highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">char</highlight><highlight class="normal"><sp/>*regex_text,<sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">char</highlight><highlight class="normal"><sp/>*to_match,</highlight></codeline>
<codeline lineno="13"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="keywordtype">size_t</highlight><highlight class="normal"><sp/>**sind,<sp/></highlight><highlight class="keywordtype">size_t</highlight><highlight class="normal"><sp/>**eind);</highlight></codeline>
<codeline lineno="14"><highlight class="normal">EXTERNC<sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>find_match(</highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">char</highlight><highlight class="normal"><sp/>*regex_text,<sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">char</highlight><highlight class="normal"><sp/>*to_match,</highlight></codeline>
<codeline lineno="15"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="keywordtype">size_t</highlight><highlight class="normal"><sp/>*sind,<sp/></highlight><highlight class="keywordtype">size_t</highlight><highlight class="normal"><sp/>*eind);</highlight></codeline>
<codeline lineno="16"><highlight class="normal">EXTERNC<sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>regex_replace_nosub(</highlight><highlight class="keywordtype">char</highlight><highlight class="normal"><sp/>*buf,<sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">size_t</highlight><highlight class="normal"><sp/>len_buf,</highlight></codeline>
<codeline lineno="17"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">char</highlight><highlight class="normal"><sp/>*re,<sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">char</highlight><highlight class="normal"><sp/>*rp,</highlight></codeline>
<codeline lineno="18"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">size_t</highlight><highlight class="normal"><sp/>nreplace);</highlight></codeline>
<codeline lineno="19"><highlight class="normal">EXTERNC<sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>get_subrefs(</highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">char</highlight><highlight class="normal"><sp/>*buf,<sp/></highlight><highlight class="keywordtype">size_t</highlight><highlight class="normal"><sp/>**refs);</highlight></codeline>
<codeline lineno="20"><highlight class="normal">EXTERNC<sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>regex_replace_sub(</highlight><highlight class="keywordtype">char</highlight><highlight class="normal"><sp/>*buf,<sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">size_t</highlight><highlight class="normal"><sp/>len_buf,</highlight></codeline>
<codeline lineno="21"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">char</highlight><highlight class="normal"><sp/>*re,<sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">char</highlight><highlight class="normal"><sp/>*rp,</highlight></codeline>
<codeline lineno="22"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">size_t</highlight><highlight class="normal"><sp/>nreplace);</highlight></codeline>
<codeline lineno="23"><highlight class="normal"></highlight></codeline>
<codeline lineno="24"><highlight class="normal"></highlight><highlight class="preprocessor">#undef<sp/>EXTERNC</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="25"><highlight class="normal"></highlight><highlight class="preprocessor">#endif<sp/></highlight><highlight class="comment">/*REGEX_WIN32_H_*/</highlight><highlight class="preprocessor"></highlight></codeline>
    </programlisting>
    <location file="/root/cis_interface/cis_interface/cis_interface/regex/regex_win32.h"/>
  </compounddef>
</doxygen>
