1448 lines
147 KiB
XML
1448 lines
147 KiB
XML
<?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.6">
|
|
<compounddef id="heap_8hpp" kind="file">
|
|
<compoundname>heap.hpp</compoundname>
|
|
<includes local="no">cstring</includes>
|
|
<includes local="no">cstdlib</includes>
|
|
<includes local="no">algorithm</includes>
|
|
<includedby refid="support_8hh" local="no">/usr/include/gecode/support.hh</includedby>
|
|
<incdepgraph>
|
|
<node id="32946">
|
|
<label>cstdlib</label>
|
|
</node>
|
|
<node id="32947">
|
|
<label>algorithm</label>
|
|
</node>
|
|
<node id="32945">
|
|
<label>cstring</label>
|
|
</node>
|
|
<node id="32944">
|
|
<label>/usr/include/gecode/support/heap.hpp</label>
|
|
<link refid="heap.hpp"/>
|
|
<childnode refid="32945" relation="include">
|
|
</childnode>
|
|
<childnode refid="32946" relation="include">
|
|
</childnode>
|
|
<childnode refid="32947" relation="include">
|
|
</childnode>
|
|
</node>
|
|
</incdepgraph>
|
|
<invincdepgraph>
|
|
<node id="32991">
|
|
<label>/usr/include/gecode/int/nvalues/int-base.hpp</label>
|
|
<link refid="nvalues_2int-base_8hpp_source"/>
|
|
<childnode refid="32983" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="32974">
|
|
<label>/usr/include/gecode/int/arithmetic.hh</label>
|
|
<link refid="int_2arithmetic_8hh_source"/>
|
|
</node>
|
|
<node id="32999">
|
|
<label>/usr/include/gecode/int/view/scale.hpp</label>
|
|
<link refid="int_2view_2scale_8hpp_source"/>
|
|
<childnode refid="33000" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="32997">
|
|
<label>/usr/include/gecode/int/div.hh</label>
|
|
<link refid="div_8hh_source"/>
|
|
<childnode refid="32998" relation="include">
|
|
</childnode>
|
|
<childnode refid="32999" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="32998">
|
|
<label>/usr/include/gecode/int/arithmetic/mult.hpp</label>
|
|
<link refid="int_2arithmetic_2mult_8hpp_source"/>
|
|
<childnode refid="32974" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="32951">
|
|
<label>/usr/include/gecode/flatzinc.hh</label>
|
|
<link refid="flatzinc_8hh_source"/>
|
|
<childnode refid="32952" relation="include">
|
|
</childnode>
|
|
<childnode refid="32953" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="32980">
|
|
<label>/usr/include/gecode/int/gcc/post.hpp</label>
|
|
<link refid="int_2gcc_2post_8hpp_source"/>
|
|
<childnode refid="32981" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="33029">
|
|
<label>/usr/include/gecode/minimodel.hh</label>
|
|
<link refid="minimodel_8hh_source"/>
|
|
<childnode refid="33030" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="33017">
|
|
<label>/usr/include/gecode/int/dom/range.hpp</label>
|
|
<link refid="range_8hpp_source"/>
|
|
<childnode refid="33001" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="33025">
|
|
<label>/usr/include/gecode/int/cumulative.hh</label>
|
|
<link refid="cumulative_8hh_source"/>
|
|
</node>
|
|
<node id="33026">
|
|
<label>/usr/include/gecode/int/unary.hh</label>
|
|
<link refid="unary_8hh_source"/>
|
|
<childnode refid="33025" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="33009">
|
|
<label>/usr/include/gecode/int/no-overlap.hh</label>
|
|
<link refid="no-overlap_8hh_source"/>
|
|
</node>
|
|
<node id="33023">
|
|
<label>/usr/include/gecode/int/support-values.hh</label>
|
|
<link refid="support-values_8hh_source"/>
|
|
<childnode refid="32998" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="32989">
|
|
<label>/usr/include/gecode/int/cumulatives.hh</label>
|
|
<link refid="cumulatives_8hh_source"/>
|
|
</node>
|
|
<node id="33032">
|
|
<label>/usr/include/gecode/set/channel.hh</label>
|
|
<link refid="set_2channel_8hh_source"/>
|
|
</node>
|
|
<node id="32990">
|
|
<label>/usr/include/gecode/int/distinct.hh</label>
|
|
<link refid="int_2distinct_8hh_source"/>
|
|
<childnode refid="32986" relation="include">
|
|
</childnode>
|
|
<childnode refid="32987" relation="include">
|
|
</childnode>
|
|
<childnode refid="32980" relation="include">
|
|
</childnode>
|
|
<childnode refid="32991" relation="include">
|
|
</childnode>
|
|
<childnode refid="32992" relation="include">
|
|
</childnode>
|
|
<childnode refid="32993" relation="include">
|
|
</childnode>
|
|
<childnode refid="32994" relation="include">
|
|
</childnode>
|
|
<childnode refid="32995" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="32967">
|
|
<label>/usr/include/gecode/gist/mainwindow.hh</label>
|
|
<link refid="mainwindow_8hh_source"/>
|
|
</node>
|
|
<node id="33057">
|
|
<label>/usr/include/gecode/search/sequential/bab.hh</label>
|
|
<link refid="sequential_2bab_8hh_source"/>
|
|
</node>
|
|
<node id="33046">
|
|
<label>/usr/include/gecode/set/rel.hh</label>
|
|
<link refid="set_2rel_8hh_source"/>
|
|
<childnode refid="33034" relation="include">
|
|
</childnode>
|
|
<childnode refid="33003" relation="include">
|
|
</childnode>
|
|
<childnode refid="33044" relation="include">
|
|
</childnode>
|
|
<childnode refid="33045" relation="include">
|
|
</childnode>
|
|
<childnode refid="33047" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="33036">
|
|
<label>/usr/include/gecode/set/int.hh</label>
|
|
<link refid="set_2int_8hh_source"/>
|
|
</node>
|
|
<node id="32972">
|
|
<label>/usr/include/gecode/gist/preferences.hh</label>
|
|
<link refid="preferences_8hh_source"/>
|
|
</node>
|
|
<node id="33019">
|
|
<label>/usr/include/gecode/int/member/prop.hpp</label>
|
|
<link refid="member_2prop_8hpp_source"/>
|
|
<childnode refid="33008" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="33004">
|
|
<label>/usr/include/gecode/int/exec.hh</label>
|
|
<link refid="exec_8hh_source"/>
|
|
</node>
|
|
<node id="32964">
|
|
<label>/usr/include/gecode/gist/nodecursor.hh</label>
|
|
<link refid="nodecursor_8hh_source"/>
|
|
<childnode refid="32963" relation="include">
|
|
</childnode>
|
|
<childnode refid="32962" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="33011">
|
|
<label>/usr/include/gecode/int/rel.hh</label>
|
|
<link refid="int_2rel_8hh_source"/>
|
|
<childnode refid="33012" relation="include">
|
|
</childnode>
|
|
<childnode refid="33013" relation="include">
|
|
</childnode>
|
|
<childnode refid="33014" relation="include">
|
|
</childnode>
|
|
<childnode refid="32974" relation="include">
|
|
</childnode>
|
|
<childnode refid="33015" relation="include">
|
|
</childnode>
|
|
<childnode refid="33016" relation="include">
|
|
</childnode>
|
|
<childnode refid="32990" relation="include">
|
|
</childnode>
|
|
<childnode refid="33017" relation="include">
|
|
</childnode>
|
|
<childnode refid="33001" relation="include">
|
|
</childnode>
|
|
<childnode refid="33018" relation="include">
|
|
</childnode>
|
|
<childnode refid="33002" relation="include">
|
|
</childnode>
|
|
<childnode refid="33005" relation="include">
|
|
</childnode>
|
|
<childnode refid="33019" relation="include">
|
|
</childnode>
|
|
<childnode refid="33020" relation="include">
|
|
</childnode>
|
|
<childnode refid="32982" relation="include">
|
|
</childnode>
|
|
<childnode refid="33021" relation="include">
|
|
</childnode>
|
|
<childnode refid="32992" relation="include">
|
|
</childnode>
|
|
<childnode refid="32993" relation="include">
|
|
</childnode>
|
|
<childnode refid="32994" relation="include">
|
|
</childnode>
|
|
<childnode refid="33022" relation="include">
|
|
</childnode>
|
|
<childnode refid="32995" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="33030">
|
|
<label>/usr/include/gecode/driver.hh</label>
|
|
<link refid="driver_8hh_source"/>
|
|
<childnode refid="32951" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="32961">
|
|
<label>/usr/include/gecode/gist/visualnode.hh</label>
|
|
<link refid="visualnode_8hh_source"/>
|
|
<childnode refid="32962" relation="include">
|
|
</childnode>
|
|
<childnode refid="32964" relation="include">
|
|
</childnode>
|
|
<childnode refid="32965" relation="include">
|
|
</childnode>
|
|
<childnode refid="32969" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="33013">
|
|
<label>/usr/include/gecode/int/arithmetic/nroot.hpp</label>
|
|
<link refid="nroot_8hpp_source"/>
|
|
<childnode refid="32974" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="32954">
|
|
<label>/usr/include/gecode/float.hh</label>
|
|
<link refid="float_8hh_source"/>
|
|
<childnode refid="32955" relation="include">
|
|
</childnode>
|
|
<childnode refid="32956" relation="include">
|
|
</childnode>
|
|
<childnode refid="32957" relation="include">
|
|
</childnode>
|
|
<childnode refid="32958" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="33058">
|
|
<label>/usr/include/gecode/search/sequential/dfs.hh</label>
|
|
<link refid="sequential_2dfs_8hh_source"/>
|
|
</node>
|
|
<node id="33012">
|
|
<label>/usr/include/gecode/int/arithmetic/max.hpp</label>
|
|
<link refid="max_8hpp_source"/>
|
|
<childnode refid="32974" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="33008">
|
|
<label>/usr/include/gecode/int/member.hh</label>
|
|
<link refid="member_8hh_source"/>
|
|
</node>
|
|
<node id="32952">
|
|
<label>/usr/include/gecode/flatzinc/parser.hh</label>
|
|
<link refid="parser_8hh_source"/>
|
|
</node>
|
|
<node id="33050">
|
|
<label>/usr/include/gecode/search.hh</label>
|
|
<link refid="search_8hh_source"/>
|
|
<childnode refid="33030" relation="include">
|
|
</childnode>
|
|
<childnode refid="32971" relation="include">
|
|
</childnode>
|
|
<childnode refid="33051" relation="include">
|
|
</childnode>
|
|
<childnode refid="33059" relation="include">
|
|
</childnode>
|
|
<childnode refid="33053" relation="include">
|
|
</childnode>
|
|
<childnode refid="33052" relation="include">
|
|
</childnode>
|
|
<childnode refid="33057" relation="include">
|
|
</childnode>
|
|
<childnode refid="33058" relation="include">
|
|
</childnode>
|
|
<childnode refid="33056" relation="include">
|
|
</childnode>
|
|
<childnode refid="33061" relation="include">
|
|
</childnode>
|
|
<childnode refid="33062" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="32966">
|
|
<label>/usr/include/gecode/gist/qtgist.hh</label>
|
|
<link refid="qtgist_8hh_source"/>
|
|
<childnode refid="32967" relation="include">
|
|
</childnode>
|
|
<childnode refid="32968" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="33021">
|
|
<label>/usr/include/gecode/int/nvalues/bool-gq.hpp</label>
|
|
<link refid="bool-gq_8hpp_source"/>
|
|
<childnode refid="32983" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="33055">
|
|
<label>/usr/include/gecode/search/parallel/dfs.hh</label>
|
|
<link refid="parallel_2dfs_8hh_source"/>
|
|
</node>
|
|
<node id="33040">
|
|
<label>/usr/include/gecode/set/branch.hh</label>
|
|
<link refid="set_2branch_8hh_source"/>
|
|
</node>
|
|
<node id="32988">
|
|
<label>/usr/include/gecode/int/count.hh</label>
|
|
<link refid="count_8hh_source"/>
|
|
</node>
|
|
<node id="32969">
|
|
<label>/usr/include/gecode/gist/treecanvas.hh</label>
|
|
<link refid="treecanvas_8hh_source"/>
|
|
<childnode refid="32966" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="32993">
|
|
<label>/usr/include/gecode/int/nvalues/int-gq.hpp</label>
|
|
<link refid="nvalues_2int-gq_8hpp_source"/>
|
|
<childnode refid="32983" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="33016">
|
|
<label>/usr/include/gecode/int/count/rel.hpp</label>
|
|
<link refid="rel_8hpp_source"/>
|
|
<childnode refid="32988" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="33003">
|
|
<label>/usr/include/gecode/set/element.hh</label>
|
|
<link refid="set_2element_8hh_source"/>
|
|
</node>
|
|
<node id="32950">
|
|
<label>/usr/include/gecode/kernel.hh</label>
|
|
<link refid="kernel_8hh_source"/>
|
|
<childnode refid="32951" relation="include">
|
|
</childnode>
|
|
<childnode refid="32954" relation="include">
|
|
</childnode>
|
|
<childnode refid="32959" relation="include">
|
|
</childnode>
|
|
<childnode refid="32960" relation="include">
|
|
</childnode>
|
|
<childnode refid="32970" relation="include">
|
|
</childnode>
|
|
<childnode refid="32969" relation="include">
|
|
</childnode>
|
|
<childnode refid="32961" relation="include">
|
|
</childnode>
|
|
<childnode refid="32971" relation="include">
|
|
</childnode>
|
|
<childnode refid="32973" relation="include">
|
|
</childnode>
|
|
<childnode refid="33048" relation="include">
|
|
</childnode>
|
|
<childnode refid="33049" relation="include">
|
|
</childnode>
|
|
<childnode refid="33029" relation="include">
|
|
</childnode>
|
|
<childnode refid="33050" relation="include">
|
|
</childnode>
|
|
<childnode refid="33039" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="33042">
|
|
<label>/usr/include/gecode/set/distinct.hh</label>
|
|
<link refid="set_2distinct_8hh_source"/>
|
|
</node>
|
|
<node id="32965">
|
|
<label>/usr/include/gecode/gist/nodestats.hh</label>
|
|
<link refid="nodestats_8hh_source"/>
|
|
<childnode refid="32966" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="33045">
|
|
<label>/usr/include/gecode/set/rel-op.hh</label>
|
|
<link refid="rel-op_8hh_source"/>
|
|
<childnode refid="33003" relation="include">
|
|
</childnode>
|
|
<childnode refid="33044" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="32994">
|
|
<label>/usr/include/gecode/int/nvalues/int-lq.hpp</label>
|
|
<link refid="nvalues_2int-lq_8hpp_source"/>
|
|
<childnode refid="32983" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="33002">
|
|
<label>/usr/include/gecode/int/element.hh</label>
|
|
<link refid="int_2element_8hh_source"/>
|
|
<childnode refid="33003" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="32986">
|
|
<label>/usr/include/gecode/int/channel.hh</label>
|
|
<link refid="int_2channel_8hh_source"/>
|
|
</node>
|
|
<node id="33049">
|
|
<label>/usr/include/gecode/kernel/wait.hh</label>
|
|
<link refid="wait_8hh_source"/>
|
|
</node>
|
|
<node id="33007">
|
|
<label>/usr/include/gecode/set/ldsb.hh</label>
|
|
<link refid="set_2ldsb_8hh_source"/>
|
|
</node>
|
|
<node id="32968">
|
|
<label>/usr/include/gecode/gist/nodewidget.hh</label>
|
|
<link refid="nodewidget_8hh_source"/>
|
|
</node>
|
|
<node id="33000">
|
|
<label>/usr/include/gecode/int/view.hpp</label>
|
|
<link refid="int_2view_8hpp_source"/>
|
|
<childnode refid="32973" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="32975">
|
|
<label>/usr/include/gecode/int/bin-packing.hh</label>
|
|
<link refid="bin-packing_8hh_source"/>
|
|
</node>
|
|
<node id="33062">
|
|
<label>/usr/include/gecode/search/worker.hh</label>
|
|
<link refid="worker_8hh_source"/>
|
|
<childnode refid="33053" relation="include">
|
|
</childnode>
|
|
<childnode refid="33052" relation="include">
|
|
</childnode>
|
|
<childnode refid="33057" relation="include">
|
|
</childnode>
|
|
<childnode refid="33058" relation="include">
|
|
</childnode>
|
|
<childnode refid="33056" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="32976">
|
|
<label>/usr/include/gecode/int/bool.hh</label>
|
|
<link refid="bool_8hh_source"/>
|
|
<childnode refid="32977" relation="include">
|
|
</childnode>
|
|
<childnode refid="32982" relation="include">
|
|
</childnode>
|
|
<childnode refid="32984" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="33033">
|
|
<label>/usr/include/gecode/set/channel/int.hpp</label>
|
|
<link refid="set_2channel_2int_8hpp_source"/>
|
|
<childnode refid="33032" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="33034">
|
|
<label>/usr/include/gecode/set/channel/sorted.hpp</label>
|
|
<link refid="sorted_8hpp_source"/>
|
|
<childnode refid="33032" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="33020">
|
|
<label>/usr/include/gecode/int/member/re-prop.hpp</label>
|
|
<link refid="re-prop_8hpp_source"/>
|
|
<childnode refid="33008" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="32959">
|
|
<label>/usr/include/gecode/gist/node.hh</label>
|
|
<link refid="node_8hh_source"/>
|
|
<childnode refid="32960" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="33006">
|
|
<label>/usr/include/gecode/int/ldsb.hh</label>
|
|
<link refid="int_2ldsb_8hh_source"/>
|
|
<childnode refid="33007" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="33052">
|
|
<label>/usr/include/gecode/search/parallel/path.hh</label>
|
|
<link refid="parallel_2path_8hh_source"/>
|
|
<childnode refid="33053" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="32971">
|
|
<label>/usr/include/gecode/gist.hh</label>
|
|
<link refid="gist_8hh_source"/>
|
|
<childnode refid="32967" relation="include">
|
|
</childnode>
|
|
<childnode refid="32968" relation="include">
|
|
</childnode>
|
|
<childnode refid="32972" relation="include">
|
|
</childnode>
|
|
<childnode refid="32970" relation="include">
|
|
</childnode>
|
|
<childnode refid="32969" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="32985">
|
|
<label>/usr/include/gecode/int/branch.hh</label>
|
|
<link refid="int_2branch_8hh_source"/>
|
|
</node>
|
|
<node id="32983">
|
|
<label>/usr/include/gecode/int/nvalues.hh</label>
|
|
<link refid="nvalues_8hh_source"/>
|
|
</node>
|
|
<node id="33015">
|
|
<label>/usr/include/gecode/int/bool/ite.hpp</label>
|
|
<link refid="ite_8hpp_source"/>
|
|
<childnode refid="32976" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="33022">
|
|
<label>/usr/include/gecode/int/sequence.hh</label>
|
|
<link refid="int_2sequence_8hh_source"/>
|
|
</node>
|
|
<node id="33059">
|
|
<label>/usr/include/gecode/search/meta/rbs.hh</label>
|
|
<link refid="rbs_8hh_source"/>
|
|
<childnode refid="33060" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="33054">
|
|
<label>/usr/include/gecode/search/parallel/bab.hh</label>
|
|
<link refid="parallel_2bab_8hh_source"/>
|
|
</node>
|
|
<node id="33028">
|
|
<label>/usr/include/gecode/int/view-val-graph.hh</label>
|
|
<link refid="view-val-graph_8hh_source"/>
|
|
<childnode refid="32990" relation="include">
|
|
</childnode>
|
|
<childnode refid="32983" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="32977">
|
|
<label>/usr/include/gecode/int/linear/bool-int.hpp</label>
|
|
<link refid="bool-int_8hpp_source"/>
|
|
<childnode refid="32978" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="32995">
|
|
<label>/usr/include/gecode/int/sorted/propagate.hpp</label>
|
|
<link refid="sorted_2propagate_8hpp_source"/>
|
|
<childnode refid="32996" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="32958">
|
|
<label>/usr/include/gecode/float/rel.hh</label>
|
|
<link refid="float_2rel_8hh_source"/>
|
|
<childnode refid="32955" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="32970">
|
|
<label>/usr/include/gecode/gist/stopbrancher.hh</label>
|
|
<link refid="stopbrancher_8hh_source"/>
|
|
</node>
|
|
<node id="33053">
|
|
<label>/usr/include/gecode/search/parallel/engine.hh</label>
|
|
<link refid="engine_8hh_source"/>
|
|
<childnode refid="33054" relation="include">
|
|
</childnode>
|
|
<childnode refid="33055" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="32955">
|
|
<label>/usr/include/gecode/float/arithmetic.hh</label>
|
|
<link refid="float_2arithmetic_8hh_source"/>
|
|
</node>
|
|
<node id="32953">
|
|
<label>/usr/include/gecode/flatzinc/registry.hh</label>
|
|
<link refid="registry_8hh_source"/>
|
|
</node>
|
|
<node id="32981">
|
|
<label>/usr/include/gecode/int/gcc.hh</label>
|
|
<link refid="gcc_8hh_source"/>
|
|
</node>
|
|
<node id="33037">
|
|
<label>/usr/include/gecode/set/int/minmax.hpp</label>
|
|
<link refid="minmax_8hpp_source"/>
|
|
<childnode refid="33036" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="32962">
|
|
<label>/usr/include/gecode/gist/layoutcursor.hh</label>
|
|
<link refid="layoutcursor_8hh_source"/>
|
|
<childnode refid="32963" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="32960">
|
|
<label>/usr/include/gecode/gist/spacenode.hh</label>
|
|
<link refid="spacenode_8hh_source"/>
|
|
<childnode refid="32961" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="33043">
|
|
<label>/usr/include/gecode/set/precede.hh</label>
|
|
<link refid="set_2precede_8hh_source"/>
|
|
</node>
|
|
<node id="32957">
|
|
<label>/usr/include/gecode/float/linear.hh</label>
|
|
<link refid="float_2linear_8hh_source"/>
|
|
</node>
|
|
<node id="33056">
|
|
<label>/usr/include/gecode/search/sequential/path.hh</label>
|
|
<link refid="sequential_2path_8hh_source"/>
|
|
<childnode refid="33057" relation="include">
|
|
</childnode>
|
|
<childnode refid="33058" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="33060">
|
|
<label>/usr/include/gecode/search/rbs.hpp</label>
|
|
<link refid="rbs_8hpp_source"/>
|
|
<childnode refid="33050" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="33027">
|
|
<label>/usr/include/gecode/int/val-set.hh</label>
|
|
<link refid="val-set_8hh_source"/>
|
|
<childnode refid="33008" relation="include">
|
|
</childnode>
|
|
<childnode refid="32983" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="32973">
|
|
<label>/usr/include/gecode/int.hh</label>
|
|
<link refid="int_8hh_source"/>
|
|
<childnode refid="32951" relation="include">
|
|
</childnode>
|
|
<childnode refid="32955" relation="include">
|
|
</childnode>
|
|
<childnode refid="32957" relation="include">
|
|
</childnode>
|
|
<childnode refid="32958" relation="include">
|
|
</childnode>
|
|
<childnode refid="32954" relation="include">
|
|
</childnode>
|
|
<childnode refid="32971" relation="include">
|
|
</childnode>
|
|
<childnode refid="32974" relation="include">
|
|
</childnode>
|
|
<childnode refid="32975" relation="include">
|
|
</childnode>
|
|
<childnode refid="32976" relation="include">
|
|
</childnode>
|
|
<childnode refid="32985" relation="include">
|
|
</childnode>
|
|
<childnode refid="32986" relation="include">
|
|
</childnode>
|
|
<childnode refid="32987" relation="include">
|
|
</childnode>
|
|
<childnode refid="32988" relation="include">
|
|
</childnode>
|
|
<childnode refid="32989" relation="include">
|
|
</childnode>
|
|
<childnode refid="32990" relation="include">
|
|
</childnode>
|
|
<childnode refid="32997" relation="include">
|
|
</childnode>
|
|
<childnode refid="33001" relation="include">
|
|
</childnode>
|
|
<childnode refid="33002" relation="include">
|
|
</childnode>
|
|
<childnode refid="33004" relation="include">
|
|
</childnode>
|
|
<childnode refid="33005" relation="include">
|
|
</childnode>
|
|
<childnode refid="32981" relation="include">
|
|
</childnode>
|
|
<childnode refid="33006" relation="include">
|
|
</childnode>
|
|
<childnode refid="32978" relation="include">
|
|
</childnode>
|
|
<childnode refid="33008" relation="include">
|
|
</childnode>
|
|
<childnode refid="33009" relation="include">
|
|
</childnode>
|
|
<childnode refid="32983" relation="include">
|
|
</childnode>
|
|
<childnode refid="33010" relation="include">
|
|
</childnode>
|
|
<childnode refid="33011" relation="include">
|
|
</childnode>
|
|
<childnode refid="33022" relation="include">
|
|
</childnode>
|
|
<childnode refid="32996" relation="include">
|
|
</childnode>
|
|
<childnode refid="33023" relation="include">
|
|
</childnode>
|
|
<childnode refid="33024" relation="include">
|
|
</childnode>
|
|
<childnode refid="33027" relation="include">
|
|
</childnode>
|
|
<childnode refid="33028" relation="include">
|
|
</childnode>
|
|
<childnode refid="33029" relation="include">
|
|
</childnode>
|
|
<childnode refid="33031" relation="include">
|
|
</childnode>
|
|
<childnode refid="33033" relation="include">
|
|
</childnode>
|
|
<childnode refid="33034" relation="include">
|
|
</childnode>
|
|
<childnode refid="33035" relation="include">
|
|
</childnode>
|
|
<childnode refid="33037" relation="include">
|
|
</childnode>
|
|
<childnode refid="33038" relation="include">
|
|
</childnode>
|
|
<childnode refid="33039" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="32982">
|
|
<label>/usr/include/gecode/int/nvalues/bool-eq.hpp</label>
|
|
<link refid="bool-eq_8hpp_source"/>
|
|
<childnode refid="32983" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="32984">
|
|
<label>/usr/include/gecode/int/nvalues/bool-lq.hpp</label>
|
|
<link refid="bool-lq_8hpp_source"/>
|
|
<childnode refid="32983" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="33024">
|
|
<label>/usr/include/gecode/int/task.hh</label>
|
|
<link refid="task_8hh_source"/>
|
|
<childnode refid="33025" relation="include">
|
|
</childnode>
|
|
<childnode refid="33026" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="33005">
|
|
<label>/usr/include/gecode/int/extensional.hh</label>
|
|
<link refid="extensional_8hh_source"/>
|
|
</node>
|
|
<node id="33051">
|
|
<label>/usr/include/gecode/search/meta/nogoods.hh</label>
|
|
<link refid="nogoods_8hh_source"/>
|
|
<childnode refid="33052" relation="include">
|
|
</childnode>
|
|
<childnode refid="33056" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="32996">
|
|
<label>/usr/include/gecode/int/sorted.hh</label>
|
|
<link refid="sorted_8hh_source"/>
|
|
</node>
|
|
<node id="33038">
|
|
<label>/usr/include/gecode/set/int/weights.hpp</label>
|
|
<link refid="weights_8hpp_source"/>
|
|
<childnode refid="33036" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="33010">
|
|
<label>/usr/include/gecode/int/precede.hh</label>
|
|
<link refid="int_2precede_8hh_source"/>
|
|
</node>
|
|
<node id="32992">
|
|
<label>/usr/include/gecode/int/nvalues/int-eq.hpp</label>
|
|
<link refid="nvalues_2int-eq_8hpp_source"/>
|
|
<childnode refid="32983" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="32956">
|
|
<label>/usr/include/gecode/float/branch.hh</label>
|
|
<link refid="float_2branch_8hh_source"/>
|
|
</node>
|
|
<node id="33047">
|
|
<label>/usr/include/gecode/set/sequence.hh</label>
|
|
<link refid="set_2sequence_8hh_source"/>
|
|
</node>
|
|
<node id="32963">
|
|
<label>/usr/include/gecode/gist/drawingcursor.hh</label>
|
|
<link refid="drawingcursor_8hh_source"/>
|
|
</node>
|
|
<node id="33035">
|
|
<label>/usr/include/gecode/set/int/card.hpp</label>
|
|
<link refid="card_8hpp_source"/>
|
|
<childnode refid="33036" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="32949">
|
|
<label>/usr/include/gecode/support.hh</label>
|
|
<link refid="support_8hh_source"/>
|
|
<childnode refid="32950" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="32979">
|
|
<label>/usr/include/gecode/int/arithmetic/divmod.hpp</label>
|
|
<link refid="divmod_8hpp_source"/>
|
|
<childnode refid="32974" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="32978">
|
|
<label>/usr/include/gecode/int/linear.hh</label>
|
|
<link refid="int_2linear_8hh_source"/>
|
|
<childnode refid="32979" relation="include">
|
|
</childnode>
|
|
<childnode refid="32974" relation="include">
|
|
</childnode>
|
|
<childnode refid="32980" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="33001">
|
|
<label>/usr/include/gecode/int/dom.hh</label>
|
|
<link refid="dom_8hh_source"/>
|
|
</node>
|
|
<node id="33031">
|
|
<label>/usr/include/gecode/set/channel/bool.hpp</label>
|
|
<link refid="set_2channel_2bool_8hpp_source"/>
|
|
<childnode refid="33032" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="33018">
|
|
<label>/usr/include/gecode/int/element/pair.hpp</label>
|
|
<link refid="pair_8hpp_source"/>
|
|
<childnode refid="33002" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="33039">
|
|
<label>/usr/include/gecode/set.hh</label>
|
|
<link refid="set_8hh_source"/>
|
|
<childnode refid="33040" relation="include">
|
|
</childnode>
|
|
<childnode refid="33034" relation="include">
|
|
</childnode>
|
|
<childnode refid="33032" relation="include">
|
|
</childnode>
|
|
<childnode refid="33041" relation="include">
|
|
</childnode>
|
|
<childnode refid="33042" relation="include">
|
|
</childnode>
|
|
<childnode refid="33003" relation="include">
|
|
</childnode>
|
|
<childnode refid="33035" relation="include">
|
|
</childnode>
|
|
<childnode refid="33037" relation="include">
|
|
</childnode>
|
|
<childnode refid="33038" relation="include">
|
|
</childnode>
|
|
<childnode refid="33036" relation="include">
|
|
</childnode>
|
|
<childnode refid="33007" relation="include">
|
|
</childnode>
|
|
<childnode refid="33043" relation="include">
|
|
</childnode>
|
|
<childnode refid="33044" relation="include">
|
|
</childnode>
|
|
<childnode refid="33045" relation="include">
|
|
</childnode>
|
|
<childnode refid="33046" relation="include">
|
|
</childnode>
|
|
<childnode refid="33047" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="33048">
|
|
<label>/usr/include/gecode/iter.hh</label>
|
|
<link refid="iter_8hh_source"/>
|
|
<childnode refid="32973" relation="include">
|
|
</childnode>
|
|
<childnode refid="33039" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="33061">
|
|
<label>/usr/include/gecode/search/support.hh</label>
|
|
<link refid="search_2support_8hh_source"/>
|
|
<childnode refid="33053" relation="include">
|
|
</childnode>
|
|
<childnode refid="33052" relation="include">
|
|
</childnode>
|
|
<childnode refid="33060" relation="include">
|
|
</childnode>
|
|
<childnode refid="33057" relation="include">
|
|
</childnode>
|
|
<childnode refid="33058" relation="include">
|
|
</childnode>
|
|
<childnode refid="33056" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="32987">
|
|
<label>/usr/include/gecode/int/circuit.hh</label>
|
|
<link refid="circuit_8hh_source"/>
|
|
</node>
|
|
<node id="32948">
|
|
<label>/usr/include/gecode/support/heap.hpp</label>
|
|
<link refid="heap.hpp"/>
|
|
<childnode refid="32949" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="33044">
|
|
<label>/usr/include/gecode/set/rel-op/post.hpp</label>
|
|
<link refid="set_2rel-op_2post_8hpp_source"/>
|
|
<childnode refid="33045" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="33014">
|
|
<label>/usr/include/gecode/int/arithmetic/pow.hpp</label>
|
|
<link refid="pow_8hpp_source"/>
|
|
<childnode refid="32974" relation="include">
|
|
</childnode>
|
|
</node>
|
|
<node id="33041">
|
|
<label>/usr/include/gecode/set/convex.hh</label>
|
|
<link refid="convex_8hh_source"/>
|
|
</node>
|
|
</invincdepgraph>
|
|
<innerclass refid="classGecode_1_1Heap" prot="public">Gecode::Heap</innerclass>
|
|
<innernamespace refid="namespaceGecode">Gecode</innernamespace>
|
|
<sectiondef kind="define">
|
|
<memberdef kind="define" id="heap_8hpp_1a4f2e8ffc727c695214fa1801511dfa29" prot="public" static="no">
|
|
<name>GECODE_SUPPORT_REALLOC</name>
|
|
<param><defname>T</defname></param>
|
|
<initializer>template<> \
|
|
forceinline T* \
|
|
Heap::realloc<T>(T* b, long unsigned int, long unsigned int m) { \
|
|
return static_cast<T*>(rrealloc(b,m*sizeof(T))); \
|
|
} \
|
|
template<> \
|
|
forceinline T* \
|
|
Heap::realloc<T>(T* b, long int n, long int m) { \
|
|
assert((n >= 0) && (m >= 0)); \
|
|
return realloc<T>(b,static_cast<long unsigned int>(n), \
|
|
static_cast<long unsigned int>(m)); \
|
|
} \
|
|
template<> \
|
|
forceinline T* \
|
|
Heap::realloc<T>(T* b, unsigned int n, unsigned int m) { \
|
|
return realloc<T>(b,static_cast<long unsigned int>(n), \
|
|
static_cast<long unsigned int>(m)); \
|
|
} \
|
|
template<> \
|
|
forceinline T* \
|
|
Heap::realloc<T>(T* b, int n, int m) { \
|
|
assert((n >= 0) && (m >= 0)); \
|
|
return realloc<T>(b,static_cast<long unsigned int>(n), \
|
|
static_cast<long unsigned int>(m)); \
|
|
}</initializer>
|
|
<briefdescription>
|
|
</briefdescription>
|
|
<detaileddescription>
|
|
</detaileddescription>
|
|
<inbodydescription>
|
|
</inbodydescription>
|
|
<location file="/usr/include/gecode/support/heap.hpp" line="483" column="9" bodyfile="/usr/include/gecode/support/heap.hpp" bodystart="483" bodyend="-1"/>
|
|
</memberdef>
|
|
<memberdef kind="define" id="heap_8hpp_1ade45c84ec70783a6ed2fb79023feb51e" prot="public" static="no">
|
|
<name>GECODE_SUPPORT_COPY</name>
|
|
<param><defname>T</defname></param>
|
|
<initializer>template<> \
|
|
forceinline T* \
|
|
Heap::copy(T* d, const T* s, long unsigned int n) { \
|
|
return static_cast<T*>(memcpy(d,s,n*sizeof(T))); \
|
|
} \
|
|
template<> \
|
|
forceinline T* \
|
|
Heap::copy(T* d, const T* s, long int n) { \
|
|
assert(n >= 0); \
|
|
return copy<T>(d,s,static_cast<long unsigned int>(n)); \
|
|
} \
|
|
template<> \
|
|
forceinline T* \
|
|
Heap::copy(T* d, const T* s, unsigned int n) { \
|
|
return copy<T>(d,s,static_cast<long unsigned int>(n)); \
|
|
} \
|
|
template<> \
|
|
forceinline T* \
|
|
Heap::copy(T* d, const T* s, int n) { \
|
|
assert(n >= 0); \
|
|
return copy<T>(d,s,static_cast<long unsigned int>(n)); \
|
|
}</initializer>
|
|
<briefdescription>
|
|
</briefdescription>
|
|
<detaileddescription>
|
|
</detaileddescription>
|
|
<inbodydescription>
|
|
</inbodydescription>
|
|
<location file="/usr/include/gecode/support/heap.hpp" line="575" column="9" bodyfile="/usr/include/gecode/support/heap.hpp" bodystart="575" bodyend="-1"/>
|
|
</memberdef>
|
|
</sectiondef>
|
|
<briefdescription>
|
|
</briefdescription>
|
|
<detaileddescription>
|
|
</detaileddescription>
|
|
<programlisting>
|
|
<codeline lineno="1"><highlight class="comment">/*<sp/>-*-<sp/>mode:<sp/>C++;<sp/>c-basic-offset:<sp/>2;<sp/>indent-tabs-mode:<sp/>nil<sp/>-*-<sp/>*/</highlight><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="2"><highlight class="normal"></highlight><highlight class="comment">/*</highlight></codeline>
|
|
<codeline lineno="3"><highlight class="comment"><sp/>*<sp/><sp/>Main<sp/>authors:</highlight></codeline>
|
|
<codeline lineno="4"><highlight class="comment"><sp/>*<sp/><sp/><sp/><sp/><sp/>Christian<sp/>Schulte<sp/><schulte@gecode.org></highlight></codeline>
|
|
<codeline lineno="5"><highlight class="comment"><sp/>*</highlight></codeline>
|
|
<codeline lineno="6"><highlight class="comment"><sp/>*<sp/><sp/>Copyright:</highlight></codeline>
|
|
<codeline lineno="7"><highlight class="comment"><sp/>*<sp/><sp/><sp/><sp/><sp/>Christian<sp/>Schulte,<sp/>2008</highlight></codeline>
|
|
<codeline lineno="8"><highlight class="comment"><sp/>*</highlight></codeline>
|
|
<codeline lineno="9"><highlight class="comment"><sp/>*<sp/><sp/>Last<sp/>modified:</highlight></codeline>
|
|
<codeline lineno="10"><highlight class="comment"><sp/>*<sp/><sp/><sp/><sp/><sp/>$Date:<sp/>2013-07-15<sp/>02:49:56<sp/>+0200<sp/>(Mon,<sp/>15<sp/>Jul<sp/>2013)<sp/>$<sp/>by<sp/>$Author:<sp/>tack<sp/>$</highlight></codeline>
|
|
<codeline lineno="11"><highlight class="comment"><sp/>*<sp/><sp/><sp/><sp/><sp/>$Revision:<sp/>13879<sp/>$</highlight></codeline>
|
|
<codeline lineno="12"><highlight class="comment"><sp/>*</highlight></codeline>
|
|
<codeline lineno="13"><highlight class="comment"><sp/>*<sp/><sp/>This<sp/>file<sp/>is<sp/>part<sp/>of<sp/>Gecode,<sp/>the<sp/>generic<sp/>constraint</highlight></codeline>
|
|
<codeline lineno="14"><highlight class="comment"><sp/>*<sp/><sp/>development<sp/>environment:</highlight></codeline>
|
|
<codeline lineno="15"><highlight class="comment"><sp/>*<sp/><sp/><sp/><sp/><sp/>http://www.gecode.org</highlight></codeline>
|
|
<codeline lineno="16"><highlight class="comment"><sp/>*</highlight></codeline>
|
|
<codeline lineno="17"><highlight class="comment"><sp/>*<sp/><sp/>Permission<sp/>is<sp/>hereby<sp/>granted,<sp/>free<sp/>of<sp/>charge,<sp/>to<sp/>any<sp/>person<sp/>obtaining</highlight></codeline>
|
|
<codeline lineno="18"><highlight class="comment"><sp/>*<sp/><sp/>a<sp/>copy<sp/>of<sp/>this<sp/>software<sp/>and<sp/>associated<sp/>documentation<sp/>files<sp/>(the</highlight></codeline>
|
|
<codeline lineno="19"><highlight class="comment"><sp/>*<sp/><sp/>"Software"),<sp/>to<sp/>deal<sp/>in<sp/>the<sp/>Software<sp/>without<sp/>restriction,<sp/>including</highlight></codeline>
|
|
<codeline lineno="20"><highlight class="comment"><sp/>*<sp/><sp/>without<sp/>limitation<sp/>the<sp/>rights<sp/>to<sp/>use,<sp/>copy,<sp/>modify,<sp/>merge,<sp/>publish,</highlight></codeline>
|
|
<codeline lineno="21"><highlight class="comment"><sp/>*<sp/><sp/>distribute,<sp/>sublicense,<sp/>and/or<sp/>sell<sp/>copies<sp/>of<sp/>the<sp/>Software,<sp/>and<sp/>to</highlight></codeline>
|
|
<codeline lineno="22"><highlight class="comment"><sp/>*<sp/><sp/>permit<sp/>persons<sp/>to<sp/>whom<sp/>the<sp/>Software<sp/>is<sp/>furnished<sp/>to<sp/>do<sp/>so,<sp/>subject<sp/>to</highlight></codeline>
|
|
<codeline lineno="23"><highlight class="comment"><sp/>*<sp/><sp/>the<sp/>following<sp/>conditions:</highlight></codeline>
|
|
<codeline lineno="24"><highlight class="comment"><sp/>*</highlight></codeline>
|
|
<codeline lineno="25"><highlight class="comment"><sp/>*<sp/><sp/>The<sp/>above<sp/>copyright<sp/>notice<sp/>and<sp/>this<sp/>permission<sp/>notice<sp/>shall<sp/>be</highlight></codeline>
|
|
<codeline lineno="26"><highlight class="comment"><sp/>*<sp/><sp/>included<sp/>in<sp/>all<sp/>copies<sp/>or<sp/>substantial<sp/>portions<sp/>of<sp/>the<sp/>Software.</highlight></codeline>
|
|
<codeline lineno="27"><highlight class="comment"><sp/>*</highlight></codeline>
|
|
<codeline lineno="28"><highlight class="comment"><sp/>*<sp/><sp/>THE<sp/>SOFTWARE<sp/>IS<sp/>PROVIDED<sp/>"AS<sp/>IS",<sp/>WITHOUT<sp/>WARRANTY<sp/>OF<sp/>ANY<sp/>KIND,</highlight></codeline>
|
|
<codeline lineno="29"><highlight class="comment"><sp/>*<sp/><sp/>EXPRESS<sp/>OR<sp/>IMPLIED,<sp/>INCLUDING<sp/>BUT<sp/>NOT<sp/>LIMITED<sp/>TO<sp/>THE<sp/>WARRANTIES<sp/>OF</highlight></codeline>
|
|
<codeline lineno="30"><highlight class="comment"><sp/>*<sp/><sp/>MERCHANTABILITY,<sp/>FITNESS<sp/>FOR<sp/>A<sp/>PARTICULAR<sp/>PURPOSE<sp/>AND</highlight></codeline>
|
|
<codeline lineno="31"><highlight class="comment"><sp/>*<sp/><sp/>NONINFRINGEMENT.<sp/>IN<sp/>NO<sp/>EVENT<sp/>SHALL<sp/>THE<sp/>AUTHORS<sp/>OR<sp/>COPYRIGHT<sp/>HOLDERS<sp/>BE</highlight></codeline>
|
|
<codeline lineno="32"><highlight class="comment"><sp/>*<sp/><sp/>LIABLE<sp/>FOR<sp/>ANY<sp/>CLAIM,<sp/>DAMAGES<sp/>OR<sp/>OTHER<sp/>LIABILITY,<sp/>WHETHER<sp/>IN<sp/>AN<sp/>ACTION</highlight></codeline>
|
|
<codeline lineno="33"><highlight class="comment"><sp/>*<sp/><sp/>OF<sp/>CONTRACT,<sp/>TORT<sp/>OR<sp/>OTHERWISE,<sp/>ARISING<sp/>FROM,<sp/>OUT<sp/>OF<sp/>OR<sp/>IN<sp/>CONNECTION</highlight></codeline>
|
|
<codeline lineno="34"><highlight class="comment"><sp/>*<sp/><sp/>WITH<sp/>THE<sp/>SOFTWARE<sp/>OR<sp/>THE<sp/>USE<sp/>OR<sp/>OTHER<sp/>DEALINGS<sp/>IN<sp/>THE<sp/>SOFTWARE.</highlight></codeline>
|
|
<codeline lineno="35"><highlight class="comment"><sp/>*</highlight></codeline>
|
|
<codeline lineno="36"><highlight class="comment"><sp/>*/</highlight><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="37"><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="38"><highlight class="normal"></highlight><highlight class="preprocessor">#include<sp/><cstring></highlight><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="39"><highlight class="normal"></highlight><highlight class="preprocessor">#include<sp/><cstdlib></highlight><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="40"><highlight class="normal"></highlight><highlight class="preprocessor">#include<sp/><algorithm></highlight><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="41"><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="42"><highlight class="normal"></highlight><highlight class="preprocessor">#ifdef<sp/>GECODE_PEAKHEAP_MALLOC_H</highlight></codeline>
|
|
<codeline lineno="43"><highlight class="preprocessor"></highlight><highlight class="preprocessor">#include<sp/><malloc.h></highlight><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="44"><highlight class="normal"></highlight><highlight class="preprocessor">#endif</highlight></codeline>
|
|
<codeline lineno="45"><highlight class="preprocessor"></highlight><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="46"><highlight class="normal"></highlight><highlight class="preprocessor">#ifdef<sp/>GECODE_PEAKHEAP_MALLOC_MALLOC_H</highlight></codeline>
|
|
<codeline lineno="47"><highlight class="preprocessor"></highlight><highlight class="preprocessor">#include<sp/><malloc/malloc.h></highlight><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="48"><highlight class="normal"></highlight><highlight class="preprocessor">#endif</highlight></codeline>
|
|
<codeline lineno="49"><highlight class="preprocessor"></highlight><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="50"><highlight class="normal"></highlight><highlight class="keyword">namespace<sp/></highlight><highlight class="normal">Gecode<sp/>{</highlight></codeline>
|
|
<codeline lineno="51"><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="66" refid="classGecode_1_1Heap" refkind="compound"><highlight class="normal"><sp/><sp/></highlight><highlight class="keyword">class<sp/></highlight><highlight class="normal"><ref refid="classGecode_1_1Heap" kindref="compound">Heap</ref><sp/>{</highlight></codeline>
|
|
<codeline lineno="67"><highlight class="normal"><sp/><sp/></highlight><highlight class="keyword">public</highlight><highlight class="normal">:</highlight></codeline>
|
|
<codeline lineno="69"><highlight class="normal"><sp/><sp/><sp/><sp/><ref refid="classGecode_1_1Heap_1a409288e773a6f8cf2103e4a40bb2e7bf" kindref="member">Heap</ref>(</highlight><highlight class="keywordtype">void</highlight><highlight class="normal">);</highlight></codeline>
|
|
<codeline lineno="71"></codeline>
|
|
<codeline lineno="72"></codeline>
|
|
<codeline lineno="78"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="79"><highlight class="normal"><sp/><sp/><sp/><sp/>T*<sp/><ref refid="classGecode_1_1Heap_1a9421bccf9db4f773fdef71e17d09ad51" kindref="member">alloc</ref>(</highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n);</highlight></codeline>
|
|
<codeline lineno="86"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="87"><highlight class="normal"><sp/><sp/><sp/><sp/>T*<sp/><ref refid="classGecode_1_1Heap_1a9421bccf9db4f773fdef71e17d09ad51" kindref="member">alloc</ref>(</highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n);</highlight></codeline>
|
|
<codeline lineno="94"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="95"><highlight class="normal"><sp/><sp/><sp/><sp/>T*<sp/><ref refid="classGecode_1_1Heap_1a9421bccf9db4f773fdef71e17d09ad51" kindref="member">alloc</ref>(</highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n);</highlight></codeline>
|
|
<codeline lineno="102"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="103"><highlight class="normal"><sp/><sp/><sp/><sp/>T*<sp/><ref refid="classGecode_1_1Heap_1a9421bccf9db4f773fdef71e17d09ad51" kindref="member">alloc</ref>(</highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n);</highlight></codeline>
|
|
<codeline lineno="110"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="111"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"><sp/><ref refid="classGecode_1_1Heap_1a896fd2ab9d4304ee4f8b90de66291add" kindref="member">free</ref>(T*<sp/>b,<sp/></highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n);</highlight></codeline>
|
|
<codeline lineno="118"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="119"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"><sp/><ref refid="classGecode_1_1Heap_1a896fd2ab9d4304ee4f8b90de66291add" kindref="member">free</ref>(T*<sp/>b,<sp/></highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n);</highlight></codeline>
|
|
<codeline lineno="126"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="127"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"><sp/><ref refid="classGecode_1_1Heap_1a896fd2ab9d4304ee4f8b90de66291add" kindref="member">free</ref>(T*<sp/>b,<sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n);</highlight></codeline>
|
|
<codeline lineno="134"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="135"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"><sp/><ref refid="classGecode_1_1Heap_1a896fd2ab9d4304ee4f8b90de66291add" kindref="member">free</ref>(T*<sp/>b,<sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n);</highlight></codeline>
|
|
<codeline lineno="147"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="148"><highlight class="normal"><sp/><sp/><sp/><sp/>T*<sp/><ref refid="classGecode_1_1Heap_1afd4c30033c627eedd31f2308466b2ead" kindref="member">realloc</ref>(T*<sp/>b,<sp/></highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n,<sp/></highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>m);</highlight></codeline>
|
|
<codeline lineno="160"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="161"><highlight class="normal"><sp/><sp/><sp/><sp/>T*<sp/><ref refid="classGecode_1_1Heap_1afd4c30033c627eedd31f2308466b2ead" kindref="member">realloc</ref>(T*<sp/>b,<sp/></highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n,<sp/></highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>m);</highlight></codeline>
|
|
<codeline lineno="173"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="174"><highlight class="normal"><sp/><sp/><sp/><sp/>T*<sp/><ref refid="classGecode_1_1Heap_1afd4c30033c627eedd31f2308466b2ead" kindref="member">realloc</ref>(T*<sp/>b,<sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n,<sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>m);</highlight></codeline>
|
|
<codeline lineno="186"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="187"><highlight class="normal"><sp/><sp/><sp/><sp/>T*<sp/><ref refid="classGecode_1_1Heap_1afd4c30033c627eedd31f2308466b2ead" kindref="member">realloc</ref>(T*<sp/>b,<sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n,<sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>m);</highlight></codeline>
|
|
<codeline lineno="195"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="196"><highlight class="normal"><sp/><sp/><sp/><sp/>T**<sp/><ref refid="classGecode_1_1Heap_1afd4c30033c627eedd31f2308466b2ead" kindref="member">realloc</ref>(T**<sp/>b,<sp/></highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n,<sp/></highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>m);</highlight></codeline>
|
|
<codeline lineno="204"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="205"><highlight class="normal"><sp/><sp/><sp/><sp/>T**<sp/><ref refid="classGecode_1_1Heap_1afd4c30033c627eedd31f2308466b2ead" kindref="member">realloc</ref>(T**<sp/>b,<sp/></highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n,<sp/></highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>m);</highlight></codeline>
|
|
<codeline lineno="213"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="214"><highlight class="normal"><sp/><sp/><sp/><sp/>T**<sp/><ref refid="classGecode_1_1Heap_1afd4c30033c627eedd31f2308466b2ead" kindref="member">realloc</ref>(T**<sp/>b,<sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n,<sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>m);</highlight></codeline>
|
|
<codeline lineno="222"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="223"><highlight class="normal"><sp/><sp/><sp/><sp/>T**<sp/><ref refid="classGecode_1_1Heap_1afd4c30033c627eedd31f2308466b2ead" kindref="member">realloc</ref>(T**<sp/>b,<sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n,<sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>m);</highlight></codeline>
|
|
<codeline lineno="232"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="233"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">static</highlight><highlight class="normal"><sp/>T*<sp/><ref refid="classGecode_1_1Heap_1ac020483db8d961c48453f1686e64f63b" kindref="member">copy</ref>(T*<sp/>d,<sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/>T*<sp/>s,<sp/></highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n);</highlight></codeline>
|
|
<codeline lineno="242"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="243"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">static</highlight><highlight class="normal"><sp/>T*<sp/><ref refid="classGecode_1_1Heap_1ac020483db8d961c48453f1686e64f63b" kindref="member">copy</ref>(T*<sp/>d,<sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/>T*<sp/>s,<sp/></highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n);</highlight></codeline>
|
|
<codeline lineno="252"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="253"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">static</highlight><highlight class="normal"><sp/>T*<sp/><ref refid="classGecode_1_1Heap_1ac020483db8d961c48453f1686e64f63b" kindref="member">copy</ref>(T*<sp/>d,<sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/>T*<sp/>s,<sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n);</highlight></codeline>
|
|
<codeline lineno="262"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="263"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">static</highlight><highlight class="normal"><sp/>T*<sp/><ref refid="classGecode_1_1Heap_1ac020483db8d961c48453f1686e64f63b" kindref="member">copy</ref>(T*<sp/>d,<sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/>T*<sp/>s,<sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n);</highlight></codeline>
|
|
<codeline lineno="271"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="272"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">static</highlight><highlight class="normal"><sp/>T**<sp/><ref refid="classGecode_1_1Heap_1ac020483db8d961c48453f1686e64f63b" kindref="member">copy</ref>(T**<sp/>d,<sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/>T**<sp/>s,<sp/></highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n);</highlight></codeline>
|
|
<codeline lineno="280"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="281"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">static</highlight><highlight class="normal"><sp/>T**<sp/><ref refid="classGecode_1_1Heap_1ac020483db8d961c48453f1686e64f63b" kindref="member">copy</ref>(T**<sp/>d,<sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/>T**<sp/>s,<sp/></highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n);</highlight></codeline>
|
|
<codeline lineno="289"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="290"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">static</highlight><highlight class="normal"><sp/>T**<sp/><ref refid="classGecode_1_1Heap_1ac020483db8d961c48453f1686e64f63b" kindref="member">copy</ref>(T**<sp/>d,<sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/>T**<sp/>s,<sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n);</highlight></codeline>
|
|
<codeline lineno="298"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="299"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">static</highlight><highlight class="normal"><sp/>T**<sp/><ref refid="classGecode_1_1Heap_1ac020483db8d961c48453f1686e64f63b" kindref="member">copy</ref>(T**<sp/>d,<sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/>T**<sp/>s,<sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n);</highlight></codeline>
|
|
<codeline lineno="301"></codeline>
|
|
<codeline lineno="303"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordtype">void</highlight><highlight class="normal">*<sp/><ref refid="classGecode_1_1Heap_1a55baad1786a0407ba0321cd37745a7a6" kindref="member">ralloc</ref>(</highlight><highlight class="keywordtype">size_t</highlight><highlight class="normal"><sp/>s);</highlight></codeline>
|
|
<codeline lineno="306"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"><sp/><sp/><ref refid="classGecode_1_1Heap_1aa424ffe00ff3f52d7e66a5766db638bf" kindref="member">rfree</ref>(</highlight><highlight class="keywordtype">void</highlight><highlight class="normal">*<sp/>p);</highlight></codeline>
|
|
<codeline lineno="308"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"><sp/><sp/><ref refid="classGecode_1_1Heap_1aa424ffe00ff3f52d7e66a5766db638bf" kindref="member">rfree</ref>(</highlight><highlight class="keywordtype">void</highlight><highlight class="normal">*<sp/>p,<sp/></highlight><highlight class="keywordtype">size_t</highlight><highlight class="normal"><sp/>s);</highlight></codeline>
|
|
<codeline lineno="310"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordtype">void</highlight><highlight class="normal">*<sp/><ref refid="classGecode_1_1Heap_1a01add5778d54dd188d97c24f9b211146" kindref="member">rrealloc</ref>(</highlight><highlight class="keywordtype">void</highlight><highlight class="normal">*<sp/>p,<sp/></highlight><highlight class="keywordtype">size_t</highlight><highlight class="normal"><sp/>s);</highlight></codeline>
|
|
<codeline lineno="312"><highlight class="normal"><sp/><sp/></highlight><highlight class="keyword">private</highlight><highlight class="normal">:</highlight></codeline>
|
|
<codeline lineno="314"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">static</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">void</highlight><highlight class="normal">*<sp/></highlight><highlight class="keyword">operator</highlight><highlight class="normal"><sp/></highlight><highlight class="keyword">new</highlight><highlight class="normal">(</highlight><highlight class="keywordtype">size_t</highlight><highlight class="normal"><sp/>s)<sp/></highlight><highlight class="keywordflow">throw</highlight><highlight class="normal">()<sp/>{<sp/>(void)<sp/>s;<sp/></highlight><highlight class="keywordflow">return</highlight><highlight class="normal"><sp/>NULL;<sp/>}</highlight></codeline>
|
|
<codeline lineno="316"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">static</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"><sp/><sp/></highlight><highlight class="keyword">operator</highlight><highlight class="normal"><sp/></highlight><highlight class="keyword">delete</highlight><highlight class="normal">(</highlight><highlight class="keywordtype">void</highlight><highlight class="normal">*<sp/>p)<sp/>{<sp/>(void)<sp/>p;<sp/>};</highlight></codeline>
|
|
<codeline lineno="318"><highlight class="normal"><sp/><sp/><sp/><sp/><ref refid="classGecode_1_1Heap_1a409288e773a6f8cf2103e4a40bb2e7bf" kindref="member">Heap</ref>(</highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/><ref refid="classGecode_1_1Heap" kindref="compound">Heap</ref>&)<sp/>{}</highlight></codeline>
|
|
<codeline lineno="320"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/><ref refid="classGecode_1_1Heap" kindref="compound">Heap</ref>&<sp/>operator<sp/>=(</highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/><ref refid="classGecode_1_1Heap" kindref="compound">Heap</ref>&)<sp/>{<sp/></highlight><highlight class="keywordflow">return</highlight><highlight class="normal"><sp/>*</highlight><highlight class="keyword">this</highlight><highlight class="normal">;<sp/>}</highlight></codeline>
|
|
<codeline lineno="321"><highlight class="normal"></highlight><highlight class="preprocessor">#ifdef<sp/>GECODE_PEAKHEAP</highlight></codeline>
|
|
<codeline lineno="322"><highlight class="preprocessor"></highlight><highlight class="normal"><sp/><sp/><sp/><sp/><ref refid="classGecode_1_1Support_1_1Mutex" kindref="compound">Support::FastMutex</ref><sp/>_m;</highlight></codeline>
|
|
<codeline lineno="325"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordtype">size_t</highlight><highlight class="normal"><sp/>_peak;</highlight></codeline>
|
|
<codeline lineno="327"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordtype">size_t</highlight><highlight class="normal"><sp/>_cur;</highlight></codeline>
|
|
<codeline lineno="328"><highlight class="normal"></highlight><highlight class="keyword">public</highlight><highlight class="normal">:</highlight></codeline>
|
|
<codeline lineno="329"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordtype">size_t</highlight><highlight class="normal"><sp/>peak(</highlight><highlight class="keywordtype">void</highlight><highlight class="normal">);</highlight></codeline>
|
|
<codeline lineno="330"><highlight class="normal"></highlight><highlight class="preprocessor">#endif</highlight></codeline>
|
|
<codeline lineno="331"><highlight class="preprocessor"></highlight><highlight class="normal"><sp/><sp/>};</highlight></codeline>
|
|
<codeline lineno="332"><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="334"><highlight class="normal"><sp/><sp/></highlight><highlight class="keyword">extern</highlight><highlight class="normal"><sp/>GECODE_SUPPORT_EXPORT<sp/><ref refid="classGecode_1_1Heap" kindref="compound">Heap</ref><sp/><ref refid="namespaceGecode_1a6595368d634d0db095ad8dee79f14d2c" kindref="member">heap</ref>;</highlight></codeline>
|
|
<codeline lineno="335"><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="336"><highlight class="normal"><sp/><sp/></highlight><highlight class="comment">/*</highlight></codeline>
|
|
<codeline lineno="337"><highlight class="comment"><sp/><sp/><sp/>*<sp/>Wrappers<sp/>for<sp/>raw<sp/>allocation<sp/>routines</highlight></codeline>
|
|
<codeline lineno="338"><highlight class="comment"><sp/><sp/><sp/>*</highlight></codeline>
|
|
<codeline lineno="339"><highlight class="comment"><sp/><sp/><sp/>*/</highlight><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="340"><highlight class="normal"><sp/><sp/>forceinline<sp/></highlight><highlight class="keywordtype">void</highlight><highlight class="normal">*</highlight></codeline>
|
|
<codeline lineno="341" refid="classGecode_1_1Heap_1a55baad1786a0407ba0321cd37745a7a6" refkind="member"><highlight class="normal"><sp/><sp/><ref refid="classGecode_1_1Heap_1a55baad1786a0407ba0321cd37745a7a6" kindref="member">Heap::ralloc</ref>(</highlight><highlight class="keywordtype">size_t</highlight><highlight class="normal"><sp/>s)<sp/>{</highlight></codeline>
|
|
<codeline lineno="342"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordtype">void</highlight><highlight class="normal">*<sp/>p<sp/>=<sp/>::malloc(s);</highlight></codeline>
|
|
<codeline lineno="343"><highlight class="normal"></highlight><highlight class="preprocessor">#ifdef<sp/>GECODE_PEAKHEAP</highlight></codeline>
|
|
<codeline lineno="344"><highlight class="preprocessor"></highlight><highlight class="normal"><sp/><sp/><sp/><sp/>_m.acquire();</highlight></codeline>
|
|
<codeline lineno="345"><highlight class="normal"><sp/><sp/><sp/><sp/>_cur<sp/>+=<sp/>GECODE_MSIZE(p);</highlight></codeline>
|
|
<codeline lineno="346"><highlight class="normal"><sp/><sp/><sp/><sp/>_peak<sp/>=<sp/><ref refid="group__TaskModelFloatArith_1ga958cb25ae9754d6cc35c7c6e34ebc1e3" kindref="member">std::max</ref>(_peak,_cur);</highlight></codeline>
|
|
<codeline lineno="347"><highlight class="normal"><sp/><sp/><sp/><sp/>_m.release();</highlight></codeline>
|
|
<codeline lineno="348"><highlight class="normal"></highlight><highlight class="preprocessor">#endif</highlight></codeline>
|
|
<codeline lineno="349"><highlight class="preprocessor"></highlight><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">if</highlight><highlight class="normal"><sp/>(p<sp/>!=<sp/>NULL)</highlight></codeline>
|
|
<codeline lineno="350"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">return</highlight><highlight class="normal"><sp/>p;</highlight></codeline>
|
|
<codeline lineno="351"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">throw</highlight><highlight class="normal"><sp/><ref refid="classGecode_1_1MemoryExhausted" kindref="compound">MemoryExhausted</ref>();</highlight></codeline>
|
|
<codeline lineno="352"><highlight class="normal"><sp/><sp/>}</highlight></codeline>
|
|
<codeline lineno="353"><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="354"><highlight class="normal"><sp/><sp/>forceinline<sp/></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="355" refid="classGecode_1_1Heap_1aa424ffe00ff3f52d7e66a5766db638bf" refkind="member"><highlight class="normal"><sp/><sp/><ref refid="classGecode_1_1Heap_1aa424ffe00ff3f52d7e66a5766db638bf" kindref="member">Heap::rfree</ref>(</highlight><highlight class="keywordtype">void</highlight><highlight class="normal">*<sp/>p)<sp/>{</highlight></codeline>
|
|
<codeline lineno="356"><highlight class="normal"></highlight><highlight class="preprocessor">#ifdef<sp/>GECODE_PEAKHEAP</highlight></codeline>
|
|
<codeline lineno="357"><highlight class="preprocessor"></highlight><highlight class="normal"><sp/><sp/><sp/><sp/>_m.acquire();</highlight></codeline>
|
|
<codeline lineno="358"><highlight class="normal"><sp/><sp/><sp/><sp/>_cur<sp/>-=<sp/>GECODE_MSIZE(p);</highlight></codeline>
|
|
<codeline lineno="359"><highlight class="normal"><sp/><sp/><sp/><sp/>_m.release();</highlight></codeline>
|
|
<codeline lineno="360"><highlight class="normal"></highlight><highlight class="preprocessor">#endif</highlight></codeline>
|
|
<codeline lineno="361"><highlight class="preprocessor"></highlight><highlight class="normal"><sp/><sp/><sp/><sp/><ref refid="classGecode_1_1Heap_1a896fd2ab9d4304ee4f8b90de66291add" kindref="member">::free</ref>(p);</highlight></codeline>
|
|
<codeline lineno="362"><highlight class="normal"><sp/><sp/>}</highlight></codeline>
|
|
<codeline lineno="363"><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="364"><highlight class="normal"><sp/><sp/>forceinline<sp/></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="365" refid="classGecode_1_1Heap_1a0fe9a14a575260169a63388ea5d2b827" refkind="member"><highlight class="normal"><sp/><sp/><ref refid="classGecode_1_1Heap_1aa424ffe00ff3f52d7e66a5766db638bf" kindref="member">Heap::rfree</ref>(</highlight><highlight class="keywordtype">void</highlight><highlight class="normal">*<sp/>p,<sp/></highlight><highlight class="keywordtype">size_t</highlight><highlight class="normal">)<sp/>{</highlight></codeline>
|
|
<codeline lineno="366"><highlight class="normal"></highlight><highlight class="preprocessor">#ifdef<sp/>GECODE_PEAKHEAP</highlight></codeline>
|
|
<codeline lineno="367"><highlight class="preprocessor"></highlight><highlight class="normal"><sp/><sp/><sp/><sp/>_m.acquire();</highlight></codeline>
|
|
<codeline lineno="368"><highlight class="normal"><sp/><sp/><sp/><sp/>_cur<sp/>-=<sp/>GECODE_MSIZE(p);</highlight></codeline>
|
|
<codeline lineno="369"><highlight class="normal"><sp/><sp/><sp/><sp/>_m.release();</highlight></codeline>
|
|
<codeline lineno="370"><highlight class="normal"></highlight><highlight class="preprocessor">#endif</highlight></codeline>
|
|
<codeline lineno="371"><highlight class="preprocessor"></highlight><highlight class="normal"><sp/><sp/><sp/><sp/><ref refid="classGecode_1_1Heap_1a896fd2ab9d4304ee4f8b90de66291add" kindref="member">::free</ref>(p);</highlight></codeline>
|
|
<codeline lineno="372"><highlight class="normal"><sp/><sp/>}</highlight></codeline>
|
|
<codeline lineno="373"><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="374"><highlight class="normal"><sp/><sp/>forceinline<sp/></highlight><highlight class="keywordtype">void</highlight><highlight class="normal">*</highlight></codeline>
|
|
<codeline lineno="375" refid="classGecode_1_1Heap_1a01add5778d54dd188d97c24f9b211146" refkind="member"><highlight class="normal"><sp/><sp/><ref refid="classGecode_1_1Heap_1a01add5778d54dd188d97c24f9b211146" kindref="member">Heap::rrealloc</ref>(</highlight><highlight class="keywordtype">void</highlight><highlight class="normal">*<sp/>p,<sp/></highlight><highlight class="keywordtype">size_t</highlight><highlight class="normal"><sp/>s)<sp/>{</highlight></codeline>
|
|
<codeline lineno="376"><highlight class="normal"></highlight><highlight class="preprocessor">#ifdef<sp/>GECODE_PEAKHEAP</highlight></codeline>
|
|
<codeline lineno="377"><highlight class="preprocessor"></highlight><highlight class="normal"><sp/><sp/><sp/><sp/>_m.acquire();</highlight></codeline>
|
|
<codeline lineno="378"><highlight class="normal"><sp/><sp/><sp/><sp/>_cur<sp/>-=<sp/>GECODE_MSIZE(p);</highlight></codeline>
|
|
<codeline lineno="379"><highlight class="normal"><sp/><sp/><sp/><sp/>_m.release();</highlight></codeline>
|
|
<codeline lineno="380"><highlight class="normal"></highlight><highlight class="preprocessor">#endif</highlight></codeline>
|
|
<codeline lineno="381"><highlight class="preprocessor"></highlight><highlight class="normal"><sp/><sp/><sp/><sp/>p<sp/>=<sp/><ref refid="classGecode_1_1Heap_1afd4c30033c627eedd31f2308466b2ead" kindref="member">::realloc</ref>(p,s);</highlight></codeline>
|
|
<codeline lineno="382"><highlight class="normal"></highlight><highlight class="preprocessor">#ifdef<sp/>GECODE_PEAKHEAP</highlight></codeline>
|
|
<codeline lineno="383"><highlight class="preprocessor"></highlight><highlight class="normal"><sp/><sp/><sp/><sp/>_m.acquire();</highlight></codeline>
|
|
<codeline lineno="384"><highlight class="normal"><sp/><sp/><sp/><sp/>_cur<sp/>+=<sp/>GECODE_MSIZE(p);</highlight></codeline>
|
|
<codeline lineno="385"><highlight class="normal"><sp/><sp/><sp/><sp/>_peak<sp/>=<sp/><ref refid="group__TaskModelFloatArith_1ga958cb25ae9754d6cc35c7c6e34ebc1e3" kindref="member">std::max</ref>(_peak,_cur);</highlight></codeline>
|
|
<codeline lineno="386"><highlight class="normal"><sp/><sp/><sp/><sp/>_m.release();</highlight></codeline>
|
|
<codeline lineno="387"><highlight class="normal"></highlight><highlight class="preprocessor">#endif</highlight></codeline>
|
|
<codeline lineno="388"><highlight class="preprocessor"></highlight><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">if</highlight><highlight class="normal"><sp/>(p<sp/>!=<sp/>NULL<sp/>||<sp/>s<sp/>==<sp/>0)</highlight></codeline>
|
|
<codeline lineno="389"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">return</highlight><highlight class="normal"><sp/>p;</highlight></codeline>
|
|
<codeline lineno="390"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">throw</highlight><highlight class="normal"><sp/><ref refid="classGecode_1_1MemoryExhausted" kindref="compound">MemoryExhausted</ref>();</highlight></codeline>
|
|
<codeline lineno="391"><highlight class="normal"><sp/><sp/>}</highlight></codeline>
|
|
<codeline lineno="392"><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="393"><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="394"><highlight class="normal"><sp/><sp/></highlight><highlight class="comment">/*</highlight></codeline>
|
|
<codeline lineno="395"><highlight class="comment"><sp/><sp/><sp/>*<sp/>Typed<sp/>allocation<sp/>routines</highlight></codeline>
|
|
<codeline lineno="396"><highlight class="comment"><sp/><sp/><sp/>*</highlight></codeline>
|
|
<codeline lineno="397"><highlight class="comment"><sp/><sp/><sp/>*/</highlight><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="398"><highlight class="normal"><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="399"><highlight class="normal"><sp/><sp/>forceinline<sp/>T*</highlight></codeline>
|
|
<codeline lineno="400"><highlight class="normal"><sp/><sp/><ref refid="classGecode_1_1Heap_1a9421bccf9db4f773fdef71e17d09ad51" kindref="member">Heap::alloc</ref>(</highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n)<sp/>{</highlight></codeline>
|
|
<codeline lineno="401"><highlight class="normal"><sp/><sp/><sp/><sp/>T*<sp/>p<sp/>=<sp/></highlight><highlight class="keyword">static_cast<</highlight><highlight class="normal">T*</highlight><highlight class="keyword">></highlight><highlight class="normal">(<ref refid="classGecode_1_1Heap_1a55baad1786a0407ba0321cd37745a7a6" kindref="member">ralloc</ref>(</highlight><highlight class="keyword">sizeof</highlight><highlight class="normal">(T)*n));</highlight></codeline>
|
|
<codeline lineno="402"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">for</highlight><highlight class="normal"><sp/>(</highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>i=n;<sp/>i--;<sp/>)</highlight></codeline>
|
|
<codeline lineno="403"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/>(</highlight><highlight class="keywordtype">void</highlight><highlight class="normal">)<sp/></highlight><highlight class="keyword">new</highlight><highlight class="normal"><sp/>(p+i)<sp/>T();</highlight></codeline>
|
|
<codeline lineno="404"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">return</highlight><highlight class="normal"><sp/>p;</highlight></codeline>
|
|
<codeline lineno="405"><highlight class="normal"><sp/><sp/>}</highlight></codeline>
|
|
<codeline lineno="406"><highlight class="normal"><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="407"><highlight class="normal"><sp/><sp/>forceinline<sp/>T*</highlight></codeline>
|
|
<codeline lineno="408"><highlight class="normal"><sp/><sp/><ref refid="classGecode_1_1Heap_1a9421bccf9db4f773fdef71e17d09ad51" kindref="member">Heap::alloc</ref>(</highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n)<sp/>{</highlight></codeline>
|
|
<codeline lineno="409"><highlight class="normal"><sp/><sp/><sp/><sp/>assert(n<sp/>>=<sp/>0);</highlight></codeline>
|
|
<codeline lineno="410"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">return</highlight><highlight class="normal"><sp/>alloc<T>(</highlight><highlight class="keyword">static_cast<</highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="keyword">></highlight><highlight class="normal">(n));</highlight></codeline>
|
|
<codeline lineno="411"><highlight class="normal"><sp/><sp/>}</highlight></codeline>
|
|
<codeline lineno="412"><highlight class="normal"><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="413"><highlight class="normal"><sp/><sp/>forceinline<sp/>T*</highlight></codeline>
|
|
<codeline lineno="414"><highlight class="normal"><sp/><sp/><ref refid="classGecode_1_1Heap_1a9421bccf9db4f773fdef71e17d09ad51" kindref="member">Heap::alloc</ref>(</highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n)<sp/>{</highlight></codeline>
|
|
<codeline lineno="415"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">return</highlight><highlight class="normal"><sp/>alloc<T>(</highlight><highlight class="keyword">static_cast<</highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="keyword">></highlight><highlight class="normal">(n));</highlight></codeline>
|
|
<codeline lineno="416"><highlight class="normal"><sp/><sp/>}</highlight></codeline>
|
|
<codeline lineno="417"><highlight class="normal"><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="418"><highlight class="normal"><sp/><sp/>forceinline<sp/>T*</highlight></codeline>
|
|
<codeline lineno="419"><highlight class="normal"><sp/><sp/><ref refid="classGecode_1_1Heap_1a9421bccf9db4f773fdef71e17d09ad51" kindref="member">Heap::alloc</ref>(</highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n)<sp/>{</highlight></codeline>
|
|
<codeline lineno="420"><highlight class="normal"><sp/><sp/><sp/><sp/>assert(n<sp/>>=<sp/>0);</highlight></codeline>
|
|
<codeline lineno="421"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">return</highlight><highlight class="normal"><sp/>alloc<T>(</highlight><highlight class="keyword">static_cast<</highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="keyword">></highlight><highlight class="normal">(n));</highlight></codeline>
|
|
<codeline lineno="422"><highlight class="normal"><sp/><sp/>}</highlight></codeline>
|
|
<codeline lineno="423"><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="424"><highlight class="normal"><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="425"><highlight class="normal"><sp/><sp/>forceinline<sp/></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="426"><highlight class="normal"><sp/><sp/><ref refid="classGecode_1_1Heap_1a896fd2ab9d4304ee4f8b90de66291add" kindref="member">Heap::free</ref>(T*<sp/>b,<sp/></highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n)<sp/>{</highlight></codeline>
|
|
<codeline lineno="427"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">for</highlight><highlight class="normal"><sp/>(</highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>i=n;<sp/>i--;<sp/>)</highlight></codeline>
|
|
<codeline lineno="428"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/>b[i].~T();</highlight></codeline>
|
|
<codeline lineno="429"><highlight class="normal"><sp/><sp/><sp/><sp/><ref refid="classGecode_1_1Heap_1aa424ffe00ff3f52d7e66a5766db638bf" kindref="member">rfree</ref>(b);</highlight></codeline>
|
|
<codeline lineno="430"><highlight class="normal"><sp/><sp/>}</highlight></codeline>
|
|
<codeline lineno="431"><highlight class="normal"><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="432"><highlight class="normal"><sp/><sp/>forceinline<sp/></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="433"><highlight class="normal"><sp/><sp/><ref refid="classGecode_1_1Heap_1a896fd2ab9d4304ee4f8b90de66291add" kindref="member">Heap::free</ref>(T*<sp/>b,<sp/></highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n)<sp/>{</highlight></codeline>
|
|
<codeline lineno="434"><highlight class="normal"><sp/><sp/><sp/><sp/>assert(n<sp/>>=<sp/>0);</highlight></codeline>
|
|
<codeline lineno="435"><highlight class="normal"><sp/><sp/><sp/><sp/>free<T>(b,<sp/></highlight><highlight class="keyword">static_cast<</highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="keyword">></highlight><highlight class="normal">(n));</highlight></codeline>
|
|
<codeline lineno="436"><highlight class="normal"><sp/><sp/>}</highlight></codeline>
|
|
<codeline lineno="437"><highlight class="normal"><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="438"><highlight class="normal"><sp/><sp/>forceinline<sp/></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="439"><highlight class="normal"><sp/><sp/><ref refid="classGecode_1_1Heap_1a896fd2ab9d4304ee4f8b90de66291add" kindref="member">Heap::free</ref>(T*<sp/>b,<sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n)<sp/>{</highlight></codeline>
|
|
<codeline lineno="440"><highlight class="normal"><sp/><sp/><sp/><sp/>free<T>(b,<sp/></highlight><highlight class="keyword">static_cast<</highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="keyword">></highlight><highlight class="normal">(n));</highlight></codeline>
|
|
<codeline lineno="441"><highlight class="normal"><sp/><sp/>}</highlight></codeline>
|
|
<codeline lineno="442"><highlight class="normal"><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="443"><highlight class="normal"><sp/><sp/>forceinline<sp/></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="444"><highlight class="normal"><sp/><sp/><ref refid="classGecode_1_1Heap_1a896fd2ab9d4304ee4f8b90de66291add" kindref="member">Heap::free</ref>(T*<sp/>b,<sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n)<sp/>{</highlight></codeline>
|
|
<codeline lineno="445"><highlight class="normal"><sp/><sp/><sp/><sp/>assert(n<sp/>>=<sp/>0);</highlight></codeline>
|
|
<codeline lineno="446"><highlight class="normal"><sp/><sp/><sp/><sp/>free<T>(b,<sp/></highlight><highlight class="keyword">static_cast<</highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="keyword">></highlight><highlight class="normal">(n));</highlight></codeline>
|
|
<codeline lineno="447"><highlight class="normal"><sp/><sp/>}</highlight></codeline>
|
|
<codeline lineno="448"><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="449"><highlight class="normal"><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="450"><highlight class="normal"><sp/><sp/>forceinline<sp/>T*</highlight></codeline>
|
|
<codeline lineno="451"><highlight class="normal"><sp/><sp/><ref refid="classGecode_1_1Heap_1afd4c30033c627eedd31f2308466b2ead" kindref="member">Heap::realloc</ref>(T*<sp/>b,<sp/></highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n,<sp/></highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>m)<sp/>{</highlight></codeline>
|
|
<codeline lineno="452"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">if</highlight><highlight class="normal"><sp/>(n<sp/>==<sp/>m)</highlight></codeline>
|
|
<codeline lineno="453"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">return</highlight><highlight class="normal"><sp/>b;</highlight></codeline>
|
|
<codeline lineno="454"><highlight class="normal"><sp/><sp/><sp/><sp/>T*<sp/>p<sp/>=<sp/></highlight><highlight class="keyword">static_cast<</highlight><highlight class="normal">T*</highlight><highlight class="keyword">></highlight><highlight class="normal">(<ref refid="classGecode_1_1Heap_1a55baad1786a0407ba0321cd37745a7a6" kindref="member">ralloc</ref>(</highlight><highlight class="keyword">sizeof</highlight><highlight class="normal">(T)*m));</highlight></codeline>
|
|
<codeline lineno="455"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">for</highlight><highlight class="normal"><sp/>(</highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>i=<ref refid="group__TaskModelFloatArith_1ga121700708772a60191be6256c3c0d151" kindref="member">std::min</ref>(n,m);<sp/>i--;<sp/>)</highlight></codeline>
|
|
<codeline lineno="456"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/>(</highlight><highlight class="keywordtype">void</highlight><highlight class="normal">)<sp/></highlight><highlight class="keyword">new</highlight><highlight class="normal"><sp/>(p+i)<sp/>T(b[i]);</highlight></codeline>
|
|
<codeline lineno="457"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">for</highlight><highlight class="normal"><sp/>(</highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>i=n;<sp/>i<m;<sp/>i++)</highlight></codeline>
|
|
<codeline lineno="458"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/>(</highlight><highlight class="keywordtype">void</highlight><highlight class="normal">)<sp/></highlight><highlight class="keyword">new</highlight><highlight class="normal"><sp/>(p+i)<sp/>T();</highlight></codeline>
|
|
<codeline lineno="459"><highlight class="normal"><sp/><sp/><sp/><sp/>free<T>(b,n);</highlight></codeline>
|
|
<codeline lineno="460"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">return</highlight><highlight class="normal"><sp/>p;</highlight></codeline>
|
|
<codeline lineno="461"><highlight class="normal"><sp/><sp/>}</highlight></codeline>
|
|
<codeline lineno="462"><highlight class="normal"><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="463"><highlight class="normal"><sp/><sp/>forceinline<sp/>T*</highlight></codeline>
|
|
<codeline lineno="464"><highlight class="normal"><sp/><sp/><ref refid="classGecode_1_1Heap_1afd4c30033c627eedd31f2308466b2ead" kindref="member">Heap::realloc</ref>(T*<sp/>b,<sp/></highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n,<sp/></highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>m)<sp/>{</highlight></codeline>
|
|
<codeline lineno="465"><highlight class="normal"><sp/><sp/><sp/><sp/>assert((n<sp/>>=<sp/>0)<sp/>&&<sp/>(m<sp/>>=<sp/>0));</highlight></codeline>
|
|
<codeline lineno="466"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">return</highlight><highlight class="normal"><sp/>realloc<T>(b,</highlight><highlight class="keyword">static_cast<</highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="keyword">></highlight><highlight class="normal">(n),</highlight></codeline>
|
|
<codeline lineno="467"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>static_cast<long<sp/>unsigned<sp/>int>(m));</highlight></codeline>
|
|
<codeline lineno="468"><highlight class="normal"><sp/><sp/>}</highlight></codeline>
|
|
<codeline lineno="469"><highlight class="normal"><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="470"><highlight class="normal"><sp/><sp/>forceinline<sp/>T*</highlight></codeline>
|
|
<codeline lineno="471"><highlight class="normal"><sp/><sp/><ref refid="classGecode_1_1Heap_1afd4c30033c627eedd31f2308466b2ead" kindref="member">Heap::realloc</ref>(T*<sp/>b,<sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n,<sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>m)<sp/>{</highlight></codeline>
|
|
<codeline lineno="472"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">return</highlight><highlight class="normal"><sp/>realloc<T>(b,</highlight><highlight class="keyword">static_cast<</highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="keyword">></highlight><highlight class="normal">(n),</highlight></codeline>
|
|
<codeline lineno="473"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>static_cast<long<sp/>unsigned<sp/>int>(m));</highlight></codeline>
|
|
<codeline lineno="474"><highlight class="normal"><sp/><sp/>}</highlight></codeline>
|
|
<codeline lineno="475"><highlight class="normal"><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="476"><highlight class="normal"><sp/><sp/>forceinline<sp/>T*</highlight></codeline>
|
|
<codeline lineno="477"><highlight class="normal"><sp/><sp/><ref refid="classGecode_1_1Heap_1afd4c30033c627eedd31f2308466b2ead" kindref="member">Heap::realloc</ref>(T*<sp/>b,<sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n,<sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>m)<sp/>{</highlight></codeline>
|
|
<codeline lineno="478"><highlight class="normal"><sp/><sp/><sp/><sp/>assert((n<sp/>>=<sp/>0)<sp/>&&<sp/>(m<sp/>>=<sp/>0));</highlight></codeline>
|
|
<codeline lineno="479"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">return</highlight><highlight class="normal"><sp/>realloc<T>(b,</highlight><highlight class="keyword">static_cast<</highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="keyword">></highlight><highlight class="normal">(n),</highlight></codeline>
|
|
<codeline lineno="480"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>static_cast<long<sp/>unsigned<sp/>int>(m));</highlight></codeline>
|
|
<codeline lineno="481"><highlight class="normal"><sp/><sp/>}</highlight></codeline>
|
|
<codeline lineno="482"><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="483"><highlight class="normal"></highlight><highlight class="preprocessor">#define<sp/>GECODE_SUPPORT_REALLOC(T)<sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="484"><highlight class="preprocessor"><sp/><sp/>template<><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="485"><highlight class="preprocessor"><sp/><sp/>forceinline<sp/>T*<sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="486"><highlight class="preprocessor"><sp/><sp/>Heap::realloc<T>(T*<sp/>b,<sp/>long<sp/>unsigned<sp/>int,<sp/>long<sp/>unsigned<sp/>int<sp/>m)<sp/>{<sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="487"><highlight class="preprocessor"><sp/><sp/><sp/><sp/>return<sp/>static_cast<T*>(rrealloc(b,m*sizeof(T)));<sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="488"><highlight class="preprocessor"><sp/><sp/>}<sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="489"><highlight class="preprocessor"><sp/><sp/>template<><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="490"><highlight class="preprocessor"><sp/><sp/>forceinline<sp/>T*<sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="491"><highlight class="preprocessor"><sp/><sp/>Heap::realloc<T>(T*<sp/>b,<sp/>long<sp/>int<sp/>n,<sp/>long<sp/>int<sp/>m)<sp/>{<sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="492"><highlight class="preprocessor"><sp/><sp/><sp/><sp/>assert((n<sp/>>=<sp/>0)<sp/>&&<sp/>(m<sp/>>=<sp/>0));<sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="493"><highlight class="preprocessor"><sp/><sp/><sp/><sp/>return<sp/>realloc<T>(b,static_cast<long<sp/>unsigned<sp/>int>(n),<sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="494"><highlight class="preprocessor"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>static_cast<long<sp/>unsigned<sp/>int>(m));<sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="495"><highlight class="preprocessor"><sp/><sp/>}<sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="496"><highlight class="preprocessor"><sp/><sp/>template<><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="497"><highlight class="preprocessor"><sp/><sp/>forceinline<sp/>T*<sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="498"><highlight class="preprocessor"><sp/><sp/>Heap::realloc<T>(T*<sp/>b,<sp/>unsigned<sp/>int<sp/>n,<sp/>unsigned<sp/>int<sp/>m)<sp/>{<sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="499"><highlight class="preprocessor"><sp/><sp/><sp/><sp/>return<sp/>realloc<T>(b,static_cast<long<sp/>unsigned<sp/>int>(n),<sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="500"><highlight class="preprocessor"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>static_cast<long<sp/>unsigned<sp/>int>(m));<sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="501"><highlight class="preprocessor"><sp/><sp/>}<sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="502"><highlight class="preprocessor"><sp/><sp/>template<><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="503"><highlight class="preprocessor"><sp/><sp/>forceinline<sp/>T*<sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="504"><highlight class="preprocessor"><sp/><sp/>Heap::realloc<T>(T*<sp/>b,<sp/>int<sp/>n,<sp/>int<sp/>m)<sp/>{<sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="505"><highlight class="preprocessor"><sp/><sp/><sp/><sp/>assert((n<sp/>>=<sp/>0)<sp/>&&<sp/>(m<sp/>>=<sp/>0));<sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="506"><highlight class="preprocessor"><sp/><sp/><sp/><sp/>return<sp/>realloc<T>(b,static_cast<long<sp/>unsigned<sp/>int>(n),<sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="507"><highlight class="preprocessor"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>static_cast<long<sp/>unsigned<sp/>int>(m));<sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="508"><highlight class="preprocessor"><sp/><sp/>}</highlight></codeline>
|
|
<codeline lineno="509"><highlight class="preprocessor"></highlight><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="510"><highlight class="normal"><sp/><sp/>GECODE_SUPPORT_REALLOC(</highlight><highlight class="keywordtype">bool</highlight><highlight class="normal">)</highlight></codeline>
|
|
<codeline lineno="511"><highlight class="normal"><sp/><sp/>GECODE_SUPPORT_REALLOC(</highlight><highlight class="keywordtype">signed</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">char</highlight><highlight class="normal">)</highlight></codeline>
|
|
<codeline lineno="512"><highlight class="normal"><sp/><sp/>GECODE_SUPPORT_REALLOC(</highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">char</highlight><highlight class="normal">)</highlight></codeline>
|
|
<codeline lineno="513"><highlight class="normal"><sp/><sp/>GECODE_SUPPORT_REALLOC(</highlight><highlight class="keywordtype">signed</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">short</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal">)</highlight></codeline>
|
|
<codeline lineno="514"><highlight class="normal"><sp/><sp/>GECODE_SUPPORT_REALLOC(</highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">short</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal">)</highlight></codeline>
|
|
<codeline lineno="515"><highlight class="normal"><sp/><sp/>GECODE_SUPPORT_REALLOC(</highlight><highlight class="keywordtype">signed</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal">)</highlight></codeline>
|
|
<codeline lineno="516"><highlight class="normal"><sp/><sp/>GECODE_SUPPORT_REALLOC(</highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal">)</highlight></codeline>
|
|
<codeline lineno="517"><highlight class="normal"><sp/><sp/>GECODE_SUPPORT_REALLOC(</highlight><highlight class="keywordtype">signed</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal">)</highlight></codeline>
|
|
<codeline lineno="518"><highlight class="normal"><sp/><sp/>GECODE_SUPPORT_REALLOC(</highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal">)</highlight></codeline>
|
|
<codeline lineno="519"><highlight class="normal"><sp/><sp/>GECODE_SUPPORT_REALLOC(</highlight><highlight class="keywordtype">float</highlight><highlight class="normal">)</highlight></codeline>
|
|
<codeline lineno="520"><highlight class="normal"><sp/><sp/>GECODE_SUPPORT_REALLOC(</highlight><highlight class="keywordtype">double</highlight><highlight class="normal">)</highlight></codeline>
|
|
<codeline lineno="521"><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="522"><highlight class="normal"></highlight><highlight class="preprocessor">#undef<sp/>GECODE_SUPPORT_REALLOC</highlight></codeline>
|
|
<codeline lineno="523"><highlight class="preprocessor"></highlight><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="524"><highlight class="normal"><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="525"><highlight class="normal"><sp/><sp/>forceinline<sp/>T**</highlight></codeline>
|
|
<codeline lineno="526"><highlight class="normal"><sp/><sp/><ref refid="classGecode_1_1Heap_1afd4c30033c627eedd31f2308466b2ead" kindref="member">Heap::realloc</ref>(T**<sp/>b,<sp/></highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal">,<sp/></highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>m)<sp/>{</highlight></codeline>
|
|
<codeline lineno="527"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">return</highlight><highlight class="normal"><sp/></highlight><highlight class="keyword">static_cast<</highlight><highlight class="normal">T**</highlight><highlight class="keyword">></highlight><highlight class="normal">(<ref refid="classGecode_1_1Heap_1a01add5778d54dd188d97c24f9b211146" kindref="member">rrealloc</ref>(b,m*</highlight><highlight class="keyword">sizeof</highlight><highlight class="normal">(T*)));</highlight></codeline>
|
|
<codeline lineno="528"><highlight class="normal"><sp/><sp/>}</highlight></codeline>
|
|
<codeline lineno="529"><highlight class="normal"><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="530"><highlight class="normal"><sp/><sp/>forceinline<sp/>T**</highlight></codeline>
|
|
<codeline lineno="531"><highlight class="normal"><sp/><sp/><ref refid="classGecode_1_1Heap_1afd4c30033c627eedd31f2308466b2ead" kindref="member">Heap::realloc</ref>(T**<sp/>b,<sp/></highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n,<sp/></highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>m)<sp/>{</highlight></codeline>
|
|
<codeline lineno="532"><highlight class="normal"><sp/><sp/><sp/><sp/>assert((n<sp/>>=<sp/>0)<sp/>&&<sp/>(m<sp/>>=<sp/>0));</highlight></codeline>
|
|
<codeline lineno="533"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">return</highlight><highlight class="normal"><sp/>realloc<T*>(b,</highlight><highlight class="keyword">static_cast<</highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="keyword">></highlight><highlight class="normal">(n),</highlight></codeline>
|
|
<codeline lineno="534"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>static_cast<long<sp/>unsigned<sp/>int>(m));</highlight></codeline>
|
|
<codeline lineno="535"><highlight class="normal"><sp/><sp/>}</highlight></codeline>
|
|
<codeline lineno="536"><highlight class="normal"><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="537"><highlight class="normal"><sp/><sp/>forceinline<sp/>T**</highlight></codeline>
|
|
<codeline lineno="538"><highlight class="normal"><sp/><sp/><ref refid="classGecode_1_1Heap_1afd4c30033c627eedd31f2308466b2ead" kindref="member">Heap::realloc</ref>(T**<sp/>b,<sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n,<sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>m)<sp/>{</highlight></codeline>
|
|
<codeline lineno="539"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">return</highlight><highlight class="normal"><sp/>realloc<T*>(b,</highlight><highlight class="keyword">static_cast<</highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="keyword">></highlight><highlight class="normal">(n),</highlight></codeline>
|
|
<codeline lineno="540"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>static_cast<long<sp/>unsigned<sp/>int>(m));</highlight></codeline>
|
|
<codeline lineno="541"><highlight class="normal"><sp/><sp/>}</highlight></codeline>
|
|
<codeline lineno="542"><highlight class="normal"><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="543"><highlight class="normal"><sp/><sp/>forceinline<sp/>T**</highlight></codeline>
|
|
<codeline lineno="544"><highlight class="normal"><sp/><sp/><ref refid="classGecode_1_1Heap_1afd4c30033c627eedd31f2308466b2ead" kindref="member">Heap::realloc</ref>(T**<sp/>b,<sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n,<sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>m)<sp/>{</highlight></codeline>
|
|
<codeline lineno="545"><highlight class="normal"><sp/><sp/><sp/><sp/>assert((n<sp/>>=<sp/>0)<sp/>&&<sp/>(m<sp/>>=<sp/>0));</highlight></codeline>
|
|
<codeline lineno="546"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">return</highlight><highlight class="normal"><sp/>realloc<T*>(b,</highlight><highlight class="keyword">static_cast<</highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="keyword">></highlight><highlight class="normal">(n),</highlight></codeline>
|
|
<codeline lineno="547"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>static_cast<long<sp/>unsigned<sp/>int>(m));</highlight></codeline>
|
|
<codeline lineno="548"><highlight class="normal"><sp/><sp/>}</highlight></codeline>
|
|
<codeline lineno="549"><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="550"><highlight class="normal"><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="551"><highlight class="normal"><sp/><sp/>forceinline<sp/>T*</highlight></codeline>
|
|
<codeline lineno="552"><highlight class="normal"><sp/><sp/><ref refid="classGecode_1_1Heap_1ac020483db8d961c48453f1686e64f63b" kindref="member">Heap::copy</ref>(T*<sp/>d,<sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/>T*<sp/>s,<sp/></highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n)<sp/>{</highlight></codeline>
|
|
<codeline lineno="553"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">for</highlight><highlight class="normal"><sp/>(</highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>i=n;<sp/>i--;<sp/>)</highlight></codeline>
|
|
<codeline lineno="554"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/>d[i]=s[i];</highlight></codeline>
|
|
<codeline lineno="555"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">return</highlight><highlight class="normal"><sp/>d;</highlight></codeline>
|
|
<codeline lineno="556"><highlight class="normal"><sp/><sp/>}</highlight></codeline>
|
|
<codeline lineno="557"><highlight class="normal"><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="558"><highlight class="normal"><sp/><sp/>forceinline<sp/>T*</highlight></codeline>
|
|
<codeline lineno="559"><highlight class="normal"><sp/><sp/><ref refid="classGecode_1_1Heap_1ac020483db8d961c48453f1686e64f63b" kindref="member">Heap::copy</ref>(T*<sp/>d,<sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/>T*<sp/>s,<sp/></highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n)<sp/>{</highlight></codeline>
|
|
<codeline lineno="560"><highlight class="normal"><sp/><sp/><sp/><sp/>assert(n<sp/>>=<sp/>0);</highlight></codeline>
|
|
<codeline lineno="561"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">return</highlight><highlight class="normal"><sp/>copy<T>(d,s,</highlight><highlight class="keyword">static_cast<</highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="keyword">></highlight><highlight class="normal">(n));</highlight></codeline>
|
|
<codeline lineno="562"><highlight class="normal"><sp/><sp/>}</highlight></codeline>
|
|
<codeline lineno="563"><highlight class="normal"><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="564"><highlight class="normal"><sp/><sp/>forceinline<sp/>T*</highlight></codeline>
|
|
<codeline lineno="565"><highlight class="normal"><sp/><sp/><ref refid="classGecode_1_1Heap_1ac020483db8d961c48453f1686e64f63b" kindref="member">Heap::copy</ref>(T*<sp/>d,<sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/>T*<sp/>s,<sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n)<sp/>{</highlight></codeline>
|
|
<codeline lineno="566"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">return</highlight><highlight class="normal"><sp/>copy<T>(d,s,</highlight><highlight class="keyword">static_cast<</highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="keyword">></highlight><highlight class="normal">(n));</highlight></codeline>
|
|
<codeline lineno="567"><highlight class="normal"><sp/><sp/>}</highlight></codeline>
|
|
<codeline lineno="568"><highlight class="normal"><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="569"><highlight class="normal"><sp/><sp/>forceinline<sp/>T*</highlight></codeline>
|
|
<codeline lineno="570"><highlight class="normal"><sp/><sp/><ref refid="classGecode_1_1Heap_1ac020483db8d961c48453f1686e64f63b" kindref="member">Heap::copy</ref>(T*<sp/>d,<sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/>T*<sp/>s,<sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n)<sp/>{</highlight></codeline>
|
|
<codeline lineno="571"><highlight class="normal"><sp/><sp/><sp/><sp/>assert(n<sp/>>=<sp/>0);</highlight></codeline>
|
|
<codeline lineno="572"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">return</highlight><highlight class="normal"><sp/>copy<T>(d,s,</highlight><highlight class="keyword">static_cast<</highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="keyword">></highlight><highlight class="normal">(n));</highlight></codeline>
|
|
<codeline lineno="573"><highlight class="normal"><sp/><sp/>}</highlight></codeline>
|
|
<codeline lineno="574"><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="575"><highlight class="normal"></highlight><highlight class="preprocessor">#define<sp/>GECODE_SUPPORT_COPY(T)<sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="576"><highlight class="preprocessor"><sp/><sp/>template<><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="577"><highlight class="preprocessor"><sp/><sp/>forceinline<sp/>T*<sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="578"><highlight class="preprocessor"><sp/><sp/>Heap::copy(T*<sp/>d,<sp/>const<sp/>T*<sp/>s,<sp/>long<sp/>unsigned<sp/>int<sp/>n)<sp/>{<sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="579"><highlight class="preprocessor"><sp/><sp/><sp/><sp/>return<sp/>static_cast<T*>(memcpy(d,s,n*sizeof(T)));<sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="580"><highlight class="preprocessor"><sp/><sp/>}<sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="581"><highlight class="preprocessor"><sp/><sp/>template<><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="582"><highlight class="preprocessor"><sp/><sp/>forceinline<sp/>T*<sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="583"><highlight class="preprocessor"><sp/><sp/>Heap::copy(T*<sp/>d,<sp/>const<sp/>T*<sp/>s,<sp/>long<sp/>int<sp/>n)<sp/>{<sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="584"><highlight class="preprocessor"><sp/><sp/><sp/><sp/>assert(n<sp/>>=<sp/>0);<sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="585"><highlight class="preprocessor"><sp/><sp/><sp/><sp/>return<sp/>copy<T>(d,s,static_cast<long<sp/>unsigned<sp/>int>(n));<sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="586"><highlight class="preprocessor"><sp/><sp/>}<sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="587"><highlight class="preprocessor"><sp/><sp/>template<><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="588"><highlight class="preprocessor"><sp/><sp/>forceinline<sp/>T*<sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="589"><highlight class="preprocessor"><sp/><sp/>Heap::copy(T*<sp/>d,<sp/>const<sp/>T*<sp/>s,<sp/>unsigned<sp/>int<sp/>n)<sp/>{<sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="590"><highlight class="preprocessor"><sp/><sp/><sp/><sp/>return<sp/>copy<T>(d,s,static_cast<long<sp/>unsigned<sp/>int>(n));<sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="591"><highlight class="preprocessor"><sp/><sp/>}<sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="592"><highlight class="preprocessor"><sp/><sp/>template<><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="593"><highlight class="preprocessor"><sp/><sp/>forceinline<sp/>T*<sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="594"><highlight class="preprocessor"><sp/><sp/>Heap::copy(T*<sp/>d,<sp/>const<sp/>T*<sp/>s,<sp/>int<sp/>n)<sp/>{<sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="595"><highlight class="preprocessor"><sp/><sp/><sp/><sp/>assert(n<sp/>>=<sp/>0);<sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="596"><highlight class="preprocessor"><sp/><sp/><sp/><sp/>return<sp/>copy<T>(d,s,static_cast<long<sp/>unsigned<sp/>int>(n));<sp/><sp/><sp/><sp/><sp/><sp/>\</highlight></codeline>
|
|
<codeline lineno="597"><highlight class="preprocessor"><sp/><sp/>}</highlight></codeline>
|
|
<codeline lineno="598"><highlight class="preprocessor"></highlight><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="599"><highlight class="normal"><sp/><sp/>GECODE_SUPPORT_COPY(</highlight><highlight class="keywordtype">bool</highlight><highlight class="normal">)</highlight></codeline>
|
|
<codeline lineno="600"><highlight class="normal"><sp/><sp/>GECODE_SUPPORT_COPY(</highlight><highlight class="keywordtype">signed</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">char</highlight><highlight class="normal">)</highlight></codeline>
|
|
<codeline lineno="601"><highlight class="normal"><sp/><sp/>GECODE_SUPPORT_COPY(</highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">char</highlight><highlight class="normal">)</highlight></codeline>
|
|
<codeline lineno="602"><highlight class="normal"><sp/><sp/>GECODE_SUPPORT_COPY(</highlight><highlight class="keywordtype">signed</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">short</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal">)</highlight></codeline>
|
|
<codeline lineno="603"><highlight class="normal"><sp/><sp/>GECODE_SUPPORT_COPY(</highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">short</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal">)</highlight></codeline>
|
|
<codeline lineno="604"><highlight class="normal"><sp/><sp/>GECODE_SUPPORT_COPY(</highlight><highlight class="keywordtype">signed</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal">)</highlight></codeline>
|
|
<codeline lineno="605"><highlight class="normal"><sp/><sp/>GECODE_SUPPORT_COPY(</highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal">)</highlight></codeline>
|
|
<codeline lineno="606"><highlight class="normal"><sp/><sp/>GECODE_SUPPORT_COPY(</highlight><highlight class="keywordtype">signed</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal">)</highlight></codeline>
|
|
<codeline lineno="607"><highlight class="normal"><sp/><sp/>GECODE_SUPPORT_COPY(</highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal">)</highlight></codeline>
|
|
<codeline lineno="608"><highlight class="normal"><sp/><sp/>GECODE_SUPPORT_COPY(</highlight><highlight class="keywordtype">float</highlight><highlight class="normal">)</highlight></codeline>
|
|
<codeline lineno="609"><highlight class="normal"><sp/><sp/>GECODE_SUPPORT_COPY(</highlight><highlight class="keywordtype">double</highlight><highlight class="normal">)</highlight></codeline>
|
|
<codeline lineno="610"><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="611"><highlight class="normal"></highlight><highlight class="preprocessor">#undef<sp/>GECODE_SUPPORT_COPY</highlight></codeline>
|
|
<codeline lineno="612"><highlight class="preprocessor"></highlight><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="613"><highlight class="normal"><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="614"><highlight class="normal"><sp/><sp/>forceinline<sp/>T**</highlight></codeline>
|
|
<codeline lineno="615"><highlight class="normal"><sp/><sp/><ref refid="classGecode_1_1Heap_1ac020483db8d961c48453f1686e64f63b" kindref="member">Heap::copy</ref>(T**<sp/>d,<sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/>T**<sp/>s,<sp/></highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n)<sp/>{</highlight></codeline>
|
|
<codeline lineno="616"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">return</highlight><highlight class="normal"><sp/></highlight><highlight class="keyword">static_cast<</highlight><highlight class="normal">T**</highlight><highlight class="keyword">></highlight><highlight class="normal">(memcpy(d,s,n*</highlight><highlight class="keyword">sizeof</highlight><highlight class="normal">(T*)));</highlight></codeline>
|
|
<codeline lineno="617"><highlight class="normal"><sp/><sp/>}</highlight></codeline>
|
|
<codeline lineno="618"><highlight class="normal"><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="619"><highlight class="normal"><sp/><sp/>forceinline<sp/>T**</highlight></codeline>
|
|
<codeline lineno="620"><highlight class="normal"><sp/><sp/><ref refid="classGecode_1_1Heap_1ac020483db8d961c48453f1686e64f63b" kindref="member">Heap::copy</ref>(T**<sp/>d,<sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/>T**<sp/>s,<sp/></highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n)<sp/>{</highlight></codeline>
|
|
<codeline lineno="621"><highlight class="normal"><sp/><sp/><sp/><sp/>assert(n<sp/>>=<sp/>0);</highlight></codeline>
|
|
<codeline lineno="622"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">return</highlight><highlight class="normal"><sp/>copy<T*>(d,s,</highlight><highlight class="keyword">static_cast<</highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="keyword">></highlight><highlight class="normal">(n));</highlight></codeline>
|
|
<codeline lineno="623"><highlight class="normal"><sp/><sp/>}</highlight></codeline>
|
|
<codeline lineno="624"><highlight class="normal"><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="625"><highlight class="normal"><sp/><sp/>forceinline<sp/>T**</highlight></codeline>
|
|
<codeline lineno="626"><highlight class="normal"><sp/><sp/><ref refid="classGecode_1_1Heap_1ac020483db8d961c48453f1686e64f63b" kindref="member">Heap::copy</ref>(T**<sp/>d,<sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/>T**<sp/>s,<sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n)<sp/>{</highlight></codeline>
|
|
<codeline lineno="627"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">return</highlight><highlight class="normal"><sp/>copy<T*>(d,s,</highlight><highlight class="keyword">static_cast<</highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="keyword">></highlight><highlight class="normal">(n));</highlight></codeline>
|
|
<codeline lineno="628"><highlight class="normal"><sp/><sp/>}</highlight></codeline>
|
|
<codeline lineno="629"><highlight class="normal"><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>T></highlight></codeline>
|
|
<codeline lineno="630"><highlight class="normal"><sp/><sp/>forceinline<sp/>T**</highlight></codeline>
|
|
<codeline lineno="631"><highlight class="normal"><sp/><sp/><ref refid="classGecode_1_1Heap_1ac020483db8d961c48453f1686e64f63b" kindref="member">Heap::copy</ref>(T**<sp/>d,<sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/>T**<sp/>s,<sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/>n)<sp/>{</highlight></codeline>
|
|
<codeline lineno="632"><highlight class="normal"><sp/><sp/><sp/><sp/>assert(n<sp/>>=<sp/>0);</highlight></codeline>
|
|
<codeline lineno="633"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">return</highlight><highlight class="normal"><sp/>copy<T*>(d,s,</highlight><highlight class="keyword">static_cast<</highlight><highlight class="keywordtype">long</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">unsigned</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="keyword">></highlight><highlight class="normal">(n));</highlight></codeline>
|
|
<codeline lineno="634"><highlight class="normal"><sp/><sp/>}</highlight></codeline>
|
|
<codeline lineno="635"><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="636"><highlight class="normal"></highlight><highlight class="preprocessor">#ifdef<sp/>GECODE_PEAKHEAP</highlight></codeline>
|
|
<codeline lineno="637"><highlight class="preprocessor"></highlight><highlight class="normal"><sp/><sp/>forceinline<sp/></highlight><highlight class="keywordtype">size_t</highlight><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="638"><highlight class="normal"><sp/><sp/>Heap::peak(</highlight><highlight class="keywordtype">void</highlight><highlight class="normal">)<sp/>{</highlight></codeline>
|
|
<codeline lineno="639"><highlight class="normal"><sp/><sp/><sp/><sp/>_m.acquire();</highlight></codeline>
|
|
<codeline lineno="640"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordtype">size_t</highlight><highlight class="normal"><sp/>ret<sp/>=<sp/>_peak;</highlight></codeline>
|
|
<codeline lineno="641"><highlight class="normal"><sp/><sp/><sp/><sp/>_m.release();</highlight></codeline>
|
|
<codeline lineno="642"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">return</highlight><highlight class="normal"><sp/>ret;</highlight></codeline>
|
|
<codeline lineno="643"><highlight class="normal"><sp/><sp/>}</highlight></codeline>
|
|
<codeline lineno="644"><highlight class="normal"></highlight><highlight class="preprocessor">#endif</highlight></codeline>
|
|
<codeline lineno="645"><highlight class="preprocessor"></highlight><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="646"><highlight class="normal">}</highlight></codeline>
|
|
<codeline lineno="647"><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="648"><highlight class="normal"></highlight><highlight class="comment">//<sp/>STATISTICS:<sp/>support-any</highlight><highlight class="normal"></highlight></codeline>
|
|
</programlisting>
|
|
<location file="/usr/include/gecode/support/heap.hpp"/>
|
|
</compounddef>
|
|
</doxygen>
|