<?xml version="1.0" encoding="Shift_JIS"?>
<?xml-stylesheet type="text/xsl" href="../Fmethod_xsl/fmethod_he_c.xsl"?>

<root>
    <func>



        <title>cnc_setlibopt</title>



        <declare>
            <vc>
                <include>#include "fwlib32.h"</include>
                <prottype>FWLIBAPI short WINAPI cnc_setlibopt( unsigned short FlibHndl, long optname, const char *optval, long optlen);</prottype>
            </vc>
        </declare>



        <doc>
            <cmn>
                <p>
                    Changes FOCAS2 library's optional specifications dynamically.
                </p>
                <p>
                   The changeable options are as follows.
                   <table border="1">
                       <tr> <td>Value(optname)</td> <td>Type</td> <td>Default</td> <td>Meaning</td> </tr>
                       <tr> <td>LIB_MODE(0)</td> <td>long</td> <td>0</td> <td>Changes the advanced mode(0) or the traditional mode(1).</td> </tr>
                       <tr> <td>MOVE_RDPRGPTR(1)</td> <td>long</td> <td>1</td> <td>Changes if the execution pointer would be moved(1) or not moved(0) after invoking <a href="program/cnc_rdpdf_line.htm" target="_parent">cnc_rdpdf_line</a> function.</td> </tr>
                   </table>
                </p>
                <p>
                    (As for the advanced/traditional mode, see &quot;<a href="./general.htm#FS16Comp" target="_parent">FS16i compatible mode</a>&quot;)
                </p>
            </cmn>
        </doc>



        <argument>
            <common>
                <vc>
                    <item>
                        <name>FlibHndl</name>
                        <type>in</type>
                        <content>
                            <p>
                                Specify the library handle. See "<a href="handle.htm" target="_parent">Library handle</a>" for details.
                            </p>
                        </content>
                    </item>
                    <item>
                        <name>optname</name>
                        <type>in</type>
                        <content>
                            <p>
                                Specify the kind of the option to be set.
                            </p>
                        </content>
                    </item>
                    <item>
                        <name>optval</name>
                        <type>in</type>
                        <content>
                            <p>
                                Specify the pointer to data to be set.
                            </p>
                        </content>
                    </item>
                    <item>
                        <name>optlen</name>
                        <type>in</type>
                        <content>
                            <p>
                                Specify the bytes size of the data(*optval) to be set.
                            </p>
                        </content>
                    </item>
                </vc>
            </common>
        </argument>



        <errcode>
            <item>
                <name>EW_LENGTH</name>
                <content>
                    Data block length error<br/>
                    Size(optlen) is wrong. 
                </content>
            </item>
            <item>
                <name>EW_ATTRIB</name>
                <content>
                    Data attribute error<br/>
                    Kind of the option(optname) is wrong.
                </content>
            </item>
            <item>
                <name>EW_DATA</name>
                <content>
                    Data error<br/>
                    Data of the option(*optval) is out of range.
                </content>
            </item>
        </errcode>



        <option>
            <hssb>The extended driver/library function is necessary.</hssb>
            <ethr>
               <p>The Ethernet function and the extended driver/library function are necessary.</p>
               <p>However, in case of Series 300i, the required CNC option is as follows.</p>
               <p>When Embedded Ethernet is used,</p>
               <p><ul>above two optional functions are not required.</ul></p>
               <p>When Ethernet board is used,</p>
               <p><ul>only Ethernet function is required.</ul></p>
            </ethr>
        </option>



        <is_parameter></is_parameter>



        <is_mode></is_mode>



        <support>
            <m>
                <fs0ia>X</fs0ia>
                <fs0ib>X</fs0ib>
                <fs15>X</fs15>
                <fs15i>X</fs15i>
                <fs16>X</fs16>
                <fs18>X</fs18>
                <fs21>X</fs21>
                <fs16ia>X</fs16ia>
                <fs18ia>X</fs18ia>
                <fs21ia>X</fs21ia>
                <fs16ib>X</fs16ib>
                <fs18ib>X</fs18ib>
                <fs21ib>X</fs21ib>
                <fs30i>H</fs30i>
            </m>
            <t>
                <fs0ia>X</fs0ia>
                <fs0ib>X</fs0ib>
                <fs15>X</fs15>
                <fs15i>X</fs15i>
                <fs16>X</fs16>
                <fs18>X</fs18>
                <fs21>X</fs21>
                <fs16ia>X</fs16ia>
                <fs18ia>X</fs18ia>
                <fs21ia>X</fs21ia>
                <fs16ib>X</fs16ib>
                <fs18ib>X</fs18ib>
                <fs21ib>X</fs21ib>
                <fs30i>H</fs30i>
            </t>
            <lc>
                <fs0ia>X</fs0ia>
                <fs0ib>X</fs0ib>
                <fs15>X</fs15>
                <fs15i>X</fs15i>
                <fs16>X</fs16>
                <fs18>X</fs18>
                <fs21>X</fs21>
                <fs16ia>X</fs16ia>
                <fs18ia>X</fs18ia>
                <fs21ia>X</fs21ia>
                <fs16ib>X</fs16ib>
                <fs18ib>X</fs18ib>
                <fs21ib>X</fs21ib>
                <fs30i>X</fs30i>
            </lc>
            <p>
                <fs16i>X</fs16i>
                <fs18i>X</fs18i>
            </p>
            <l>
                <fs16i>X</fs16i>
                <fs18i>X</fs18i>
            </l>
            <w>
                <fs16i>X</fs16i>
                <fs18i>X</fs18i>
            </w>
            <pw>
                <d>X</d>
                <h>X</h>
            </pw>

            <is>
                <m>
                    <fs30is>O</fs30is>
                </m>
                <t>
                    <fs30is>O</fs30is>
                </t>
            </is>
        </support>

        <reference>
            <item>
                <name>cnc_getlibopt</name>
                <file>handle/cnc_getlibopt.htm</file>
            </item>
            <item>
                <name>cnc_rdpdf_line</name>
                <file>program/cnc_rdpdf_line.htm</file>
            </item>
        </reference>

  </func>
</root>
