Sophie

Sophie

distrib > Mageia > 7 > armv7hl > media > core-release > by-pkgid > 9be51615c34d89bbf42198bd911d3c80 > files > 543

apt-mga-1.4.6-5.mga7.armv7hl.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.15"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>apt: pkgAcquire Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">apt
   &#160;<span id="projectnumber">1.4.6</span>
   </div>
   <div id="projectbrief">commandline package manager</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.15 -->
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',false,false,'search.php','Search');
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="#pro-types">Protected Types</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="#pro-attribs">Protected Attributes</a> &#124;
<a href="#friends">Friends</a> &#124;
<a href="classpkgAcquire-members.xhtml">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">pkgAcquire Class Reference<div class="ingroups"><a class="el" href="group__acquire.xhtml">Acquire system                                        {{{</a></div></div>  </div>
</div><!--header-->
<div class="contents">

<p>The core download scheduler. {{{.  
 <a href="classpkgAcquire.xhtml#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="acquire_8h_source.xhtml">apt-pkg/acquire.h</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpkgAcquire_1_1Item.xhtml">Item</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Represents the process by which a <a class="el" href="classpkgAcquire.xhtml" title="The core download scheduler. {{{.">pkgAcquire</a> object should retrieve a file or a collection of files.  <a href="classpkgAcquire_1_1Item.xhtml#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structpkgAcquire_1_1ItemDesc.xhtml">ItemDesc</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Represents a single download source from which an item should be downloaded.  <a href="structpkgAcquire_1_1ItemDesc.xhtml#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structpkgAcquire_1_1MethodConfig.xhtml">MethodConfig</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Information about the properties of a single acquire method. {{{.  <a href="structpkgAcquire_1_1MethodConfig.xhtml#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpkgAcquire_1_1Queue.xhtml">Queue</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A single download queue in a <a class="el" href="classpkgAcquire.xhtml" title="The core download scheduler. {{{.">pkgAcquire</a> object. {{{.  <a href="classpkgAcquire_1_1Queue.xhtml#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpkgAcquire_1_1UriIterator.xhtml">UriIterator</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Iterates over all the URIs being fetched by a <a class="el" href="classpkgAcquire.xhtml" title="The core download scheduler. {{{.">pkgAcquire</a> object. {{{.  <a href="classpkgAcquire_1_1UriIterator.xhtml#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpkgAcquire_1_1Worker.xhtml">Worker</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A fetch subprocess.  <a href="classpkgAcquire_1_1Worker.xhtml#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:ad45c2d8ba7020a5b66bb0563cc773820"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpkgAcquire.xhtml#ad45c2d8ba7020a5b66bb0563cc773820">RunResult</a> { <a class="el" href="classpkgAcquire.xhtml#ad45c2d8ba7020a5b66bb0563cc773820a45a66636ecd16b869e4aadd738813583">Continue</a>, 
<a class="el" href="classpkgAcquire.xhtml#ad45c2d8ba7020a5b66bb0563cc773820a1f506c828f4945d6b5a7bf71445f7d54">Failed</a>, 
<a class="el" href="classpkgAcquire.xhtml#ad45c2d8ba7020a5b66bb0563cc773820ad1e026338c0200900908a176717682b8">Cancelled</a>
 }</td></tr>
<tr class="memdesc:ad45c2d8ba7020a5b66bb0563cc773820"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provides information on how a download terminated.  <a href="classpkgAcquire.xhtml#ad45c2d8ba7020a5b66bb0563cc773820">More...</a><br /></td></tr>
<tr class="separator:ad45c2d8ba7020a5b66bb0563cc773820"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad5c96d11fbbc0a036b3c504b5b6b7568"><td class="memItemLeft" align="right" valign="top"><a id="ad5c96d11fbbc0a036b3c504b5b6b7568"></a>
typedef std::vector&lt; <a class="el" href="classpkgAcquire_1_1Item.xhtml">Item</a> * &gt;::iterator&#160;</td><td class="memItemRight" valign="bottom"><b>ItemIterator</b></td></tr>
<tr class="separator:ad5c96d11fbbc0a036b3c504b5b6b7568"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a865ab8f36abc917006d6d1f651c8b132"><td class="memItemLeft" align="right" valign="top"><a id="a865ab8f36abc917006d6d1f651c8b132"></a>
typedef std::vector&lt; <a class="el" href="classpkgAcquire_1_1Item.xhtml">Item</a> * &gt;::const_iterator&#160;</td><td class="memItemRight" valign="bottom"><b>ItemCIterator</b></td></tr>
<tr class="separator:a865ab8f36abc917006d6d1f651c8b132"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:ad698ed345d50318b53f3cc3ae43190db"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structpkgAcquire_1_1MethodConfig.xhtml">MethodConfig</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpkgAcquire.xhtml#ad698ed345d50318b53f3cc3ae43190db">GetConfig</a> (std::string Access)</td></tr>
<tr class="memdesc:ad698ed345d50318b53f3cc3ae43190db"><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieve information about a fetch method by name.  <a href="#ad698ed345d50318b53f3cc3ae43190db">More...</a><br /></td></tr>
<tr class="separator:ad698ed345d50318b53f3cc3ae43190db"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af15888f17717fe69c2a9d4a3f511b4a8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classpkgAcquire.xhtml#ad45c2d8ba7020a5b66bb0563cc773820">RunResult</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpkgAcquire.xhtml#af15888f17717fe69c2a9d4a3f511b4a8">Run</a> (int PulseInterval=500000)</td></tr>
<tr class="memdesc:af15888f17717fe69c2a9d4a3f511b4a8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Download all the items that have been <a class="el" href="classpkgAcquire.xhtml#a81c2ed5c92ad099344f44cfd9ebdb249" title="Add the given item to the list of items.">Add()</a>ed to this download process.  <a href="#af15888f17717fe69c2a9d4a3f511b4a8">More...</a><br /></td></tr>
<tr class="separator:af15888f17717fe69c2a9d4a3f511b4a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac5f038c2b480cf9ef5e19e3eba8dbaf9"><td class="memItemLeft" align="right" valign="top"><a id="ac5f038c2b480cf9ef5e19e3eba8dbaf9"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpkgAcquire.xhtml#ac5f038c2b480cf9ef5e19e3eba8dbaf9">Shutdown</a> ()</td></tr>
<tr class="memdesc:ac5f038c2b480cf9ef5e19e3eba8dbaf9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Remove all items from this download process, terminate all download workers, and empty all queues. <br /></td></tr>
<tr class="separator:ac5f038c2b480cf9ef5e19e3eba8dbaf9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1670b365447a9c9262393be646dc0c83"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classpkgAcquire_1_1Worker.xhtml">Worker</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpkgAcquire.xhtml#a1670b365447a9c9262393be646dc0c83">WorkersBegin</a> ()</td></tr>
<tr class="memdesc:a1670b365447a9c9262393be646dc0c83"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the first <a class="el" href="classpkgAcquire_1_1Worker.xhtml" title="A fetch subprocess.">Worker</a> object.  <a href="#a1670b365447a9c9262393be646dc0c83">More...</a><br /></td></tr>
<tr class="separator:a1670b365447a9c9262393be646dc0c83"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae88f77b544d05718eb98cf4c93bad3e8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classpkgAcquire_1_1Worker.xhtml">Worker</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpkgAcquire.xhtml#ae88f77b544d05718eb98cf4c93bad3e8">WorkerStep</a> (<a class="el" href="classpkgAcquire_1_1Worker.xhtml">Worker</a> *I) APT_PURE</td></tr>
<tr class="memdesc:ae88f77b544d05718eb98cf4c93bad3e8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Advance to the next <a class="el" href="classpkgAcquire_1_1Worker.xhtml" title="A fetch subprocess.">Worker</a> object.  <a href="#ae88f77b544d05718eb98cf4c93bad3e8">More...</a><br /></td></tr>
<tr class="separator:ae88f77b544d05718eb98cf4c93bad3e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af54b860e41ab56ec44a007f3542dbe82"><td class="memItemLeft" align="right" valign="top"><a id="af54b860e41ab56ec44a007f3542dbe82"></a>
ItemIterator&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpkgAcquire.xhtml#af54b860e41ab56ec44a007f3542dbe82">ItemsBegin</a> ()</td></tr>
<tr class="memdesc:af54b860e41ab56ec44a007f3542dbe82"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the head of the list of items. <br /></td></tr>
<tr class="separator:af54b860e41ab56ec44a007f3542dbe82"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8a6b92d0b6ba451f5c40e5d17a1ed405"><td class="memItemLeft" align="right" valign="top"><a id="a8a6b92d0b6ba451f5c40e5d17a1ed405"></a>
ItemCIterator&#160;</td><td class="memItemRight" valign="bottom"><b>ItemsBegin</b> () const</td></tr>
<tr class="separator:a8a6b92d0b6ba451f5c40e5d17a1ed405"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a06f41681fab7fd54db89fa55c09fac43"><td class="memItemLeft" align="right" valign="top"><a id="a06f41681fab7fd54db89fa55c09fac43"></a>
ItemIterator&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpkgAcquire.xhtml#a06f41681fab7fd54db89fa55c09fac43">ItemsEnd</a> ()</td></tr>
<tr class="memdesc:a06f41681fab7fd54db89fa55c09fac43"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the end iterator of the list of items. <br /></td></tr>
<tr class="separator:a06f41681fab7fd54db89fa55c09fac43"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa093d383470a218978b033971cf74a26"><td class="memItemLeft" align="right" valign="top"><a id="aa093d383470a218978b033971cf74a26"></a>
ItemCIterator&#160;</td><td class="memItemRight" valign="bottom"><b>ItemsEnd</b> () const</td></tr>
<tr class="separator:aa093d383470a218978b033971cf74a26"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a03a67f9076e4dd4a46bb429a9b1f5164"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classpkgAcquire_1_1UriIterator.xhtml">UriIterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpkgAcquire.xhtml#a03a67f9076e4dd4a46bb429a9b1f5164">UriBegin</a> ()</td></tr>
<tr class="memdesc:a03a67f9076e4dd4a46bb429a9b1f5164"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the head of the list of enqueued item URIs.  <a href="#a03a67f9076e4dd4a46bb429a9b1f5164">More...</a><br /></td></tr>
<tr class="separator:a03a67f9076e4dd4a46bb429a9b1f5164"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5e782c6e73a812c3650623fe076d4dcc"><td class="memItemLeft" align="right" valign="top"><a id="a5e782c6e73a812c3650623fe076d4dcc"></a>
<a class="el" href="classpkgAcquire_1_1UriIterator.xhtml">UriIterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpkgAcquire.xhtml#a5e782c6e73a812c3650623fe076d4dcc">UriEnd</a> ()</td></tr>
<tr class="memdesc:a5e782c6e73a812c3650623fe076d4dcc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the end iterator of the list of enqueued item URIs. <br /></td></tr>
<tr class="separator:a5e782c6e73a812c3650623fe076d4dcc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aae5af42b94e25de2d233e1bfa6b0688c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpkgAcquire.xhtml#aae5af42b94e25de2d233e1bfa6b0688c">Clean</a> (std::string Dir)</td></tr>
<tr class="separator:aae5af42b94e25de2d233e1bfa6b0688c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a155b1c5f08787829418fc297bfc5d1d5"><td class="memItemLeft" align="right" valign="top">unsigned long long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpkgAcquire.xhtml#a155b1c5f08787829418fc297bfc5d1d5">TotalNeeded</a> ()</td></tr>
<tr class="separator:a155b1c5f08787829418fc297bfc5d1d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a08457b069b64cfcb38ba4ab429baedef"><td class="memItemLeft" align="right" valign="top">unsigned long long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpkgAcquire.xhtml#a08457b069b64cfcb38ba4ab429baedef">FetchNeeded</a> ()</td></tr>
<tr class="separator:a08457b069b64cfcb38ba4ab429baedef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af56f208869586464f3e478be784994a5"><td class="memItemLeft" align="right" valign="top">unsigned long long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpkgAcquire.xhtml#af56f208869586464f3e478be784994a5">PartialPresent</a> ()</td></tr>
<tr class="separator:af56f208869586464f3e478be784994a5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a71e72761931201212c24973340406e43"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpkgAcquire.xhtml#a71e72761931201212c24973340406e43">APT_DEPRECATED_MSG</a> (&quot;Use constructors, .SetLog and .<a class="el" href="classpkgAcquire.xhtml#a9d019487d6dfd10c9f4801c55a2a65d2">GetLock</a> as needed&quot;) bool Setup(<a class="el" href="classpkgAcquireStatus.xhtml">pkgAcquireStatus</a> *Progress</td></tr>
<tr class="memdesc:a71e72761931201212c24973340406e43"><td class="mdescLeft">&#160;</td><td class="mdescRight">Delayed constructor.  <a href="#a71e72761931201212c24973340406e43">More...</a><br /></td></tr>
<tr class="separator:a71e72761931201212c24973340406e43"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9f5d351e5e37ab3241156c4106e7f2a5"><td class="memItemLeft" align="right" valign="top"><a id="a9f5d351e5e37ab3241156c4106e7f2a5"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>SetLog</b> (<a class="el" href="classpkgAcquireStatus.xhtml">pkgAcquireStatus</a> *Progress)</td></tr>
<tr class="separator:a9f5d351e5e37ab3241156c4106e7f2a5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9d019487d6dfd10c9f4801c55a2a65d2"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpkgAcquire.xhtml#a9d019487d6dfd10c9f4801c55a2a65d2">GetLock</a> (std::string const &amp;Lock)</td></tr>
<tr class="memdesc:a9d019487d6dfd10c9f4801c55a2a65d2"><td class="mdescLeft">&#160;</td><td class="mdescRight">acquire lock and perform directory setup  <a href="#a9d019487d6dfd10c9f4801c55a2a65d2">More...</a><br /></td></tr>
<tr class="separator:a9d019487d6dfd10c9f4801c55a2a65d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9350e6c4105830bbf28af0a8cd3948bb"><td class="memItemLeft" align="right" valign="top"><a id="a9350e6c4105830bbf28af0a8cd3948bb"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpkgAcquire.xhtml#a9350e6c4105830bbf28af0a8cd3948bb">pkgAcquire</a> (<a class="el" href="classpkgAcquireStatus.xhtml">pkgAcquireStatus</a> *<a class="el" href="classpkgAcquire.xhtml#aa7f97da72ceb8761a1cda178c778ca7c">Log</a>)</td></tr>
<tr class="memdesc:a9350e6c4105830bbf28af0a8cd3948bb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Construct a new <a class="el" href="classpkgAcquire.xhtml" title="The core download scheduler. {{{.">pkgAcquire</a>. <br /></td></tr>
<tr class="separator:a9350e6c4105830bbf28af0a8cd3948bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a63b3097945b28966895045ffeaeb658c"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpkgAcquire.xhtml#a63b3097945b28966895045ffeaeb658c">~pkgAcquire</a> ()</td></tr>
<tr class="memdesc:a63b3097945b28966895045ffeaeb658c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destroy this <a class="el" href="classpkgAcquire.xhtml" title="The core download scheduler. {{{.">pkgAcquire</a> object.  <a href="#a63b3097945b28966895045ffeaeb658c">More...</a><br /></td></tr>
<tr class="separator:a63b3097945b28966895045ffeaeb658c"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:ac278f9e294596c62ea6c106b2537ce6b"><td class="memItemLeft" align="right" valign="top"><a id="ac278f9e294596c62ea6c106b2537ce6b"></a>
std::string const  &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>Lock</b> = &quot;&quot;)</td></tr>
<tr class="separator:ac278f9e294596c62ea6c106b2537ce6b"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-types"></a>
Protected Types</h2></td></tr>
<tr class="memitem:aedefc2c8ff9f8aa323d296085f969555"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpkgAcquire.xhtml#aedefc2c8ff9f8aa323d296085f969555">QueueStrategy</a> { <a class="el" href="classpkgAcquire.xhtml#aedefc2c8ff9f8aa323d296085f969555ad2a3b31a571e30aeeb9d40666f04b902">QueueHost</a>, 
<a class="el" href="classpkgAcquire.xhtml#aedefc2c8ff9f8aa323d296085f969555adfbf4cb90b4209e5981227965246d8f0">QueueAccess</a>
 }</td></tr>
<tr class="memdesc:aedefc2c8ff9f8aa323d296085f969555"><td class="mdescLeft">&#160;</td><td class="mdescRight">Represents the queuing strategy for remote URIs.  <a href="classpkgAcquire.xhtml#aedefc2c8ff9f8aa323d296085f969555">More...</a><br /></td></tr>
<tr class="separator:aedefc2c8ff9f8aa323d296085f969555"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:a81c2ed5c92ad099344f44cfd9ebdb249"><td class="memItemLeft" align="right" valign="top"><a id="a81c2ed5c92ad099344f44cfd9ebdb249"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpkgAcquire.xhtml#a81c2ed5c92ad099344f44cfd9ebdb249">Add</a> (<a class="el" href="classpkgAcquire_1_1Item.xhtml">Item</a> *<a class="el" href="classpkgAcquire_1_1Item.xhtml">Item</a>)</td></tr>
<tr class="memdesc:a81c2ed5c92ad099344f44cfd9ebdb249"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add the given item to the list of items. <br /></td></tr>
<tr class="separator:a81c2ed5c92ad099344f44cfd9ebdb249"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae3e5902c5c7d0b5c6856e6761205a39c"><td class="memItemLeft" align="right" valign="top"><a id="ae3e5902c5c7d0b5c6856e6761205a39c"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpkgAcquire.xhtml#ae3e5902c5c7d0b5c6856e6761205a39c">Remove</a> (<a class="el" href="classpkgAcquire_1_1Item.xhtml">Item</a> *<a class="el" href="classpkgAcquire_1_1Item.xhtml">Item</a>)</td></tr>
<tr class="memdesc:ae3e5902c5c7d0b5c6856e6761205a39c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Remove the given item from the list of items. <br /></td></tr>
<tr class="separator:ae3e5902c5c7d0b5c6856e6761205a39c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4342a42ca975e033e3e859480b0c45ee"><td class="memItemLeft" align="right" valign="top"><a id="a4342a42ca975e033e3e859480b0c45ee"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpkgAcquire.xhtml#a4342a42ca975e033e3e859480b0c45ee">Add</a> (<a class="el" href="classpkgAcquire_1_1Worker.xhtml">Worker</a> *Work)</td></tr>
<tr class="memdesc:a4342a42ca975e033e3e859480b0c45ee"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add the given worker to the list of workers. <br /></td></tr>
<tr class="separator:a4342a42ca975e033e3e859480b0c45ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8ec623661f28cc681c1145186227ab60"><td class="memItemLeft" align="right" valign="top"><a id="a8ec623661f28cc681c1145186227ab60"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpkgAcquire.xhtml#a8ec623661f28cc681c1145186227ab60">Remove</a> (<a class="el" href="classpkgAcquire_1_1Worker.xhtml">Worker</a> *Work)</td></tr>
<tr class="memdesc:a8ec623661f28cc681c1145186227ab60"><td class="mdescLeft">&#160;</td><td class="mdescRight">Remove the given worker from the list of workers. <br /></td></tr>
<tr class="separator:a8ec623661f28cc681c1145186227ab60"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adff4865b0b932d7c8dae0aee44006c13"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpkgAcquire.xhtml#adff4865b0b932d7c8dae0aee44006c13">Enqueue</a> (<a class="el" href="structpkgAcquire_1_1ItemDesc.xhtml">ItemDesc</a> &amp;<a class="el" href="classpkgAcquire_1_1Item.xhtml">Item</a>)</td></tr>
<tr class="memdesc:adff4865b0b932d7c8dae0aee44006c13"><td class="mdescLeft">&#160;</td><td class="mdescRight">Insert the given fetch request into the appropriate queue.  <a href="#adff4865b0b932d7c8dae0aee44006c13">More...</a><br /></td></tr>
<tr class="separator:adff4865b0b932d7c8dae0aee44006c13"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad88e269d0297439604f25eb9c1309286"><td class="memItemLeft" align="right" valign="top"><a id="ad88e269d0297439604f25eb9c1309286"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpkgAcquire.xhtml#ad88e269d0297439604f25eb9c1309286">Dequeue</a> (<a class="el" href="classpkgAcquire_1_1Item.xhtml">Item</a> *<a class="el" href="classpkgAcquire_1_1Item.xhtml">Item</a>)</td></tr>
<tr class="memdesc:ad88e269d0297439604f25eb9c1309286"><td class="mdescLeft">&#160;</td><td class="mdescRight">Remove all fetch requests for this item from all queues. <br /></td></tr>
<tr class="separator:ad88e269d0297439604f25eb9c1309286"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a67678d9efe826f5824f2e8fc0e812338"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpkgAcquire.xhtml#a67678d9efe826f5824f2e8fc0e812338">QueueName</a> (std::string <a class="el" href="classURI.xhtml">URI</a>, <a class="el" href="structpkgAcquire_1_1MethodConfig.xhtml">MethodConfig</a> const *&amp;Config)</td></tr>
<tr class="memdesc:a67678d9efe826f5824f2e8fc0e812338"><td class="mdescLeft">&#160;</td><td class="mdescRight">Determine the fetch method and queue of a <a class="el" href="classURI.xhtml">URI</a>.  <a href="#a67678d9efe826f5824f2e8fc0e812338">More...</a><br /></td></tr>
<tr class="separator:a67678d9efe826f5824f2e8fc0e812338"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7d36ab39eb6238a71b574a40730fd469"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpkgAcquire.xhtml#a7d36ab39eb6238a71b574a40730fd469">SetFds</a> (int &amp;Fd, fd_set *RSet, fd_set *WSet)</td></tr>
<tr class="memdesc:a7d36ab39eb6238a71b574a40730fd469"><td class="mdescLeft">&#160;</td><td class="mdescRight">Build up the set of file descriptors upon which select() should block.  <a href="#a7d36ab39eb6238a71b574a40730fd469">More...</a><br /></td></tr>
<tr class="separator:a7d36ab39eb6238a71b574a40730fd469"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a68b95ec422d1a58106cf8384c3f613a9"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpkgAcquire.xhtml#a68b95ec422d1a58106cf8384c3f613a9">RunFdsSane</a> (fd_set *RSet, fd_set *WSet)</td></tr>
<tr class="separator:a68b95ec422d1a58106cf8384c3f613a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7da212e2f15e36a5bd3aa889d92f992d"><td class="memItemLeft" align="right" valign="top"><a id="a7da212e2f15e36a5bd3aa889d92f992d"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>RunFds</b> (fd_set *RSet, fd_set *WSet)</td></tr>
<tr class="separator:a7da212e2f15e36a5bd3aa889d92f992d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abf4fe627ab803887ecd2a8af30f17147"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpkgAcquire.xhtml#abf4fe627ab803887ecd2a8af30f17147">Bump</a> ()</td></tr>
<tr class="memdesc:abf4fe627ab803887ecd2a8af30f17147"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check for idle queues with ready-to-fetch items.  <a href="#abf4fe627ab803887ecd2a8af30f17147">More...</a><br /></td></tr>
<tr class="separator:abf4fe627ab803887ecd2a8af30f17147"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
Protected Attributes</h2></td></tr>
<tr class="memitem:a8089d1f0a2e10710afe1d1488a1f1f72"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="classpkgAcquire_1_1Item.xhtml">Item</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpkgAcquire.xhtml#a8089d1f0a2e10710afe1d1488a1f1f72">Items</a></td></tr>
<tr class="memdesc:a8089d1f0a2e10710afe1d1488a1f1f72"><td class="mdescLeft">&#160;</td><td class="mdescRight">A list of items to download.  <a href="#a8089d1f0a2e10710afe1d1488a1f1f72">More...</a><br /></td></tr>
<tr class="separator:a8089d1f0a2e10710afe1d1488a1f1f72"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9e42b66f176afafc1c75e78289e80e76"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classpkgAcquire_1_1Queue.xhtml">Queue</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpkgAcquire.xhtml#a9e42b66f176afafc1c75e78289e80e76">Queues</a></td></tr>
<tr class="memdesc:a9e42b66f176afafc1c75e78289e80e76"><td class="mdescLeft">&#160;</td><td class="mdescRight">The head of the list of active queues.  <a href="#a9e42b66f176afafc1c75e78289e80e76">More...</a><br /></td></tr>
<tr class="separator:a9e42b66f176afafc1c75e78289e80e76"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adfb69296d9a50a92927df7c30e56be2e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classpkgAcquire_1_1Worker.xhtml">Worker</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpkgAcquire.xhtml#adfb69296d9a50a92927df7c30e56be2e">Workers</a></td></tr>
<tr class="memdesc:adfb69296d9a50a92927df7c30e56be2e"><td class="mdescLeft">&#160;</td><td class="mdescRight">The head of the list of active workers.  <a href="#adfb69296d9a50a92927df7c30e56be2e">More...</a><br /></td></tr>
<tr class="separator:adfb69296d9a50a92927df7c30e56be2e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab04e9ee398f825f50e4f1ea7eaf37f77"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structpkgAcquire_1_1MethodConfig.xhtml">MethodConfig</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpkgAcquire.xhtml#ab04e9ee398f825f50e4f1ea7eaf37f77">Configs</a></td></tr>
<tr class="memdesc:ab04e9ee398f825f50e4f1ea7eaf37f77"><td class="mdescLeft">&#160;</td><td class="mdescRight">The head of the list of acquire method configurations.  <a href="#ab04e9ee398f825f50e4f1ea7eaf37f77">More...</a><br /></td></tr>
<tr class="separator:ab04e9ee398f825f50e4f1ea7eaf37f77"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa7f97da72ceb8761a1cda178c778ca7c"><td class="memItemLeft" align="right" valign="top"><a id="aa7f97da72ceb8761a1cda178c778ca7c"></a>
<a class="el" href="classpkgAcquireStatus.xhtml">pkgAcquireStatus</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpkgAcquire.xhtml#aa7f97da72ceb8761a1cda178c778ca7c">Log</a></td></tr>
<tr class="memdesc:aa7f97da72ceb8761a1cda178c778ca7c"><td class="mdescLeft">&#160;</td><td class="mdescRight">The progress indicator for this download. <br /></td></tr>
<tr class="separator:aa7f97da72ceb8761a1cda178c778ca7c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abc16dbbd88d0020e00b57ef0dce9471a"><td class="memItemLeft" align="right" valign="top"><a id="abc16dbbd88d0020e00b57ef0dce9471a"></a>
unsigned long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpkgAcquire.xhtml#abc16dbbd88d0020e00b57ef0dce9471a">ToFetch</a></td></tr>
<tr class="memdesc:abc16dbbd88d0020e00b57ef0dce9471a"><td class="mdescLeft">&#160;</td><td class="mdescRight">The number of files which are to be fetched. <br /></td></tr>
<tr class="separator:abc16dbbd88d0020e00b57ef0dce9471a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a83fb07406bfcd989e71f5c6588d0c266"><td class="memItemLeft" align="right" valign="top"><a id="a83fb07406bfcd989e71f5c6588d0c266"></a>
enum <a class="el" href="classpkgAcquire.xhtml#aedefc2c8ff9f8aa323d296085f969555">pkgAcquire::QueueStrategy</a>&#160;</td><td class="memItemRight" valign="bottom"><b>QueueMode</b></td></tr>
<tr class="separator:a83fb07406bfcd989e71f5c6588d0c266"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a25c57bcf8cdbeb6439120a35d90366d8"><td class="memItemLeft" align="right" valign="top"><a id="a25c57bcf8cdbeb6439120a35d90366d8"></a>
bool const&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpkgAcquire.xhtml#a25c57bcf8cdbeb6439120a35d90366d8">Debug</a></td></tr>
<tr class="memdesc:a25c57bcf8cdbeb6439120a35d90366d8"><td class="mdescLeft">&#160;</td><td class="mdescRight">If <b>true</b>, debugging information will be dumped to std::clog. <br /></td></tr>
<tr class="separator:a25c57bcf8cdbeb6439120a35d90366d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae2e97f1ebd7c956e2c68d1209eabd4b1"><td class="memItemLeft" align="right" valign="top"><a id="ae2e97f1ebd7c956e2c68d1209eabd4b1"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpkgAcquire.xhtml#ae2e97f1ebd7c956e2c68d1209eabd4b1">Running</a></td></tr>
<tr class="memdesc:ae2e97f1ebd7c956e2c68d1209eabd4b1"><td class="mdescLeft">&#160;</td><td class="mdescRight">If <b>true</b>, a download is currently in progress. <br /></td></tr>
<tr class="separator:ae2e97f1ebd7c956e2c68d1209eabd4b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
Friends</h2></td></tr>
<tr class="memitem:aad85754f188b769ff61150eaf36106c4"><td class="memItemLeft" align="right" valign="top"><a id="aad85754f188b769ff61150eaf36106c4"></a>
class&#160;</td><td class="memItemRight" valign="bottom"><b>Item</b></td></tr>
<tr class="separator:aad85754f188b769ff61150eaf36106c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a280510f12e99d32e7a009af971081a22"><td class="memItemLeft" align="right" valign="top"><a id="a280510f12e99d32e7a009af971081a22"></a>
class&#160;</td><td class="memItemRight" valign="bottom"><b>pkgAcqMetaBase</b></td></tr>
<tr class="separator:a280510f12e99d32e7a009af971081a22"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a47dfc6f2bc0d50a6e7c92eb00d97b064"><td class="memItemLeft" align="right" valign="top"><a id="a47dfc6f2bc0d50a6e7c92eb00d97b064"></a>
class&#160;</td><td class="memItemRight" valign="bottom"><b>Queue</b></td></tr>
<tr class="separator:a47dfc6f2bc0d50a6e7c92eb00d97b064"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>The core download scheduler. {{{. </p>
<p>This class represents an ongoing download. It manages the lists of active and pending downloads and handles setting up and tearing down download-related structures.</p>
<dl class="todo"><dt><b><a class="el" href="todo.xhtml#_todo000016">Todo:</a></b></dt><dd>Why all the protected data items and methods? </dd></dl>
</div><h2 class="groupheader">Member Enumeration Documentation</h2>
<a id="aedefc2c8ff9f8aa323d296085f969555"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aedefc2c8ff9f8aa323d296085f969555">&#9670;&nbsp;</a></span>QueueStrategy</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="classpkgAcquire.xhtml#aedefc2c8ff9f8aa323d296085f969555">QueueStrategy</a></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Represents the queuing strategy for remote URIs. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="aedefc2c8ff9f8aa323d296085f969555ad2a3b31a571e30aeeb9d40666f04b902"></a>QueueHost&#160;</td><td class="fielddoc"><p>Generate one queue for each protocol/host combination; downloads from multiple hosts can proceed in parallel. </p>
</td></tr>
<tr><td class="fieldname"><a id="aedefc2c8ff9f8aa323d296085f969555adfbf4cb90b4209e5981227965246d8f0"></a>QueueAccess&#160;</td><td class="fielddoc"><p>Generate a single queue for each protocol; serialize downloads from multiple hosts. </p>
</td></tr>
</table>

</div>
</div>
<a id="ad45c2d8ba7020a5b66bb0563cc773820"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad45c2d8ba7020a5b66bb0563cc773820">&#9670;&nbsp;</a></span>RunResult</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="classpkgAcquire.xhtml#ad45c2d8ba7020a5b66bb0563cc773820">RunResult</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Provides information on how a download terminated. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ad45c2d8ba7020a5b66bb0563cc773820a45a66636ecd16b869e4aadd738813583"></a>Continue&#160;</td><td class="fielddoc"><p>All files were fetched successfully. </p>
</td></tr>
<tr><td class="fieldname"><a id="ad45c2d8ba7020a5b66bb0563cc773820a1f506c828f4945d6b5a7bf71445f7d54"></a>Failed&#160;</td><td class="fielddoc"><p>Some files failed to download. </p>
</td></tr>
<tr><td class="fieldname"><a id="ad45c2d8ba7020a5b66bb0563cc773820ad1e026338c0200900908a176717682b8"></a>Cancelled&#160;</td><td class="fielddoc"><p>The download was cancelled by the user (i.e., <a class="el" href="classpkgAcquire.xhtml#aa7f97da72ceb8761a1cda178c778ca7c" title="The progress indicator for this download.">Log</a>'s <a class="el" href="classpkgAcquireStatus.xhtml#a3b094d1d0cbeadde35a2f09d6e60bf3f" title="Periodically invoked while the Acquire process is underway.">pkgAcquireStatus::Pulse()</a> method returned <b>false</b>). </p>
</td></tr>
</table>

</div>
</div>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a63b3097945b28966895045ffeaeb658c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a63b3097945b28966895045ffeaeb658c">&#9670;&nbsp;</a></span>~pkgAcquire()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">~<a class="el" href="classpkgAcquire.xhtml">pkgAcquire</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Destroy this <a class="el" href="classpkgAcquire.xhtml" title="The core download scheduler. {{{.">pkgAcquire</a> object. </p>
<p>Destroys all queue, method, and item objects associated with this download. </p>

<p class="reference">References <a class="el" href="classpkgAcquire.xhtml#ab04e9ee398f825f50e4f1ea7eaf37f77">Configs</a>, <a class="el" href="structpkgAcquire_1_1MethodConfig.xhtml#add1daf6c866236479bdac390ed41f80a">pkgAcquire::MethodConfig::Next</a>, and <a class="el" href="classpkgAcquire.xhtml#ac5f038c2b480cf9ef5e19e3eba8dbaf9">Shutdown()</a>.</p>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a71e72761931201212c24973340406e43"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a71e72761931201212c24973340406e43">&#9670;&nbsp;</a></span>APT_DEPRECATED_MSG()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">APT_DEPRECATED_MSG </td>
          <td>(</td>
          <td class="paramtype">&quot;Use&#160;</td>
          <td class="paramname"><em>constructors</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">.SetLog and .<a class="el" href="classpkgAcquire.xhtml#a9d019487d6dfd10c9f4801c55a2a65d2">GetLock</a> as needed&quot;&#160;</td>
          <td class="paramname">&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Delayed constructor. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">Progress</td><td>indicator associated with this download or <b>NULL</b> for none. This object is not owned by the download process and will not be deleted when the <a class="el" href="classpkgAcquire.xhtml" title="The core download scheduler. {{{.">pkgAcquire</a> object is destroyed. Naturally, it should live for at least as long as the <a class="el" href="classpkgAcquire.xhtml" title="The core download scheduler. {{{.">pkgAcquire</a> object does. </td></tr>
    <tr><td class="paramname">Lock</td><td>defines a lock file that should be acquired to ensure only one Acquire class is in action at the time or an empty string if no lock file should be used. If set also all needed directories will be created. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="abf4fe627ab803887ecd2a8af30f17147"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abf4fe627ab803887ecd2a8af30f17147">&#9670;&nbsp;</a></span>Bump()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void Bump </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Check for idle queues with ready-to-fetch items. </p>
<p>Called by pkgAcquire::Queue::Done each time an item is dequeued but remains on some queues; i.e., another queue should start fetching it. </p>

<p class="reference">References <a class="el" href="classpkgAcquire.xhtml#a9e42b66f176afafc1c75e78289e80e76">Queues</a>.</p>

</div>
</div>
<a id="aae5af42b94e25de2d233e1bfa6b0688c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aae5af42b94e25de2d233e1bfa6b0688c">&#9670;&nbsp;</a></span>Clean()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool Clean </td>
          <td>(</td>
          <td class="paramtype">std::string&#160;</td>
          <td class="paramname"><em>Dir</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Deletes each entry in the given directory that is not being downloaded by this object. For instance, when downloading new list files, calling <a class="el" href="classpkgAcquire.xhtml#aae5af42b94e25de2d233e1bfa6b0688c">Clean()</a> will delete the old ones.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">Dir</td><td>The directory to be cleaned out.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><b>true</b> if the directory exists and is readable. </dd></dl>

<p class="reference">References <a class="el" href="classpkgAcquire.xhtml#a8089d1f0a2e10710afe1d1488a1f1f72">Items</a>.</p>

</div>
</div>
<a id="adff4865b0b932d7c8dae0aee44006c13"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adff4865b0b932d7c8dae0aee44006c13">&#9670;&nbsp;</a></span>Enqueue()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void Enqueue </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structpkgAcquire_1_1ItemDesc.xhtml">ItemDesc</a> &amp;&#160;</td>
          <td class="paramname"><em>Item</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Insert the given fetch request into the appropriate queue. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname"><a class="el" href="classpkgAcquire_1_1Item.xhtml" title="Represents the process by which a pkgAcquire object should retrieve a file or a collection of files.">Item</a></td><td>The <a class="el" href="classURI.xhtml">URI</a> to download and the item to download it for. Copied by value into the queue; no reference to <a class="el" href="classpkgAcquire_1_1Item.xhtml" title="Represents the process by which a pkgAcquire object should retrieve a file or a collection of files.">Item</a> is retained. </td></tr>
  </table>
  </dd>
</dl>

<p class="reference">References <a class="el" href="classpkgAcquire.xhtml#a25c57bcf8cdbeb6439120a35d90366d8">Debug</a>, <a class="el" href="structpkgAcquire_1_1MethodConfig.xhtml#a8b6e3669e200451d5531db670a0b7be8">pkgAcquire::MethodConfig::LocalOnly</a>, <a class="el" href="classpkgAcquire.xhtml#aa7f97da72ceb8761a1cda178c778ca7c">Log</a>, <a class="el" href="classpkgAcquire_1_1Item.xhtml#ac0b2d9156c461297e38e9f3fdf2771b3">pkgAcquire::Item::Owner</a>, <a class="el" href="classpkgAcquire.xhtml#a67678d9efe826f5824f2e8fc0e812338">QueueName()</a>, <a class="el" href="classpkgAcquire.xhtml#a9e42b66f176afafc1c75e78289e80e76">Queues</a>, <a class="el" href="classpkgAcquire.xhtml#ae2e97f1ebd7c956e2c68d1209eabd4b1">Running</a>, <a class="el" href="classpkgAcquire_1_1Item.xhtml#abd4abbf0fe1f8b5299675b590315b4b9aafe4203baf90d29ba26cdca204795329">pkgAcquire::Item::StatIdle</a>, and <a class="el" href="classpkgAcquire.xhtml#abc16dbbd88d0020e00b57ef0dce9471a">ToFetch</a>.</p>

</div>
</div>
<a id="a08457b069b64cfcb38ba4ab429baedef"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a08457b069b64cfcb38ba4ab429baedef">&#9670;&nbsp;</a></span>FetchNeeded()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">APT_PURE unsigned long long FetchNeeded </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>the size in bytes of all non-local items included in this download. </dd></dl>

<p class="reference">References <a class="el" href="classpkgAcquire.xhtml#af54b860e41ab56ec44a007f3542dbe82">ItemsBegin()</a>, and <a class="el" href="classpkgAcquire.xhtml#a06f41681fab7fd54db89fa55c09fac43">ItemsEnd()</a>.</p>

</div>
</div>
<a id="ad698ed345d50318b53f3cc3ae43190db"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad698ed345d50318b53f3cc3ae43190db">&#9670;&nbsp;</a></span>GetConfig()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structpkgAcquire_1_1MethodConfig.xhtml">pkgAcquire::MethodConfig</a> * GetConfig </td>
          <td>(</td>
          <td class="paramtype">std::string&#160;</td>
          <td class="paramname"><em>Access</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Retrieve information about a fetch method by name. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">Access</td><td>The name of the method to look up.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>the method whose name is Access, or <b>NULL</b> if no such method exists. </dd></dl>

<p class="reference">References <a class="el" href="structpkgAcquire_1_1MethodConfig.xhtml#a006a979c4801f6b6ceb33cb3acd6dc89">pkgAcquire::MethodConfig::Access</a>, <a class="el" href="classpkgAcquire.xhtml#ab04e9ee398f825f50e4f1ea7eaf37f77">Configs</a>, <a class="el" href="structpkgAcquire_1_1MethodConfig.xhtml#add1daf6c866236479bdac390ed41f80a">pkgAcquire::MethodConfig::Next</a>, <a class="el" href="structpkgAcquire_1_1MethodConfig.xhtml#a73e5dd8b9abd83a562ded9c050af4fc5">pkgAcquire::MethodConfig::SingleInstance</a>, and <a class="el" href="classpkgAcquire_1_1Worker.xhtml#aa70efaa4751ac6d5d54dce88fe725e0a">pkgAcquire::Worker::Start()</a>.</p>

<p class="reference">Referenced by <a class="el" href="classpkgAcquire.xhtml#a67678d9efe826f5824f2e8fc0e812338">QueueName()</a>.</p>

</div>
</div>
<a id="a9d019487d6dfd10c9f4801c55a2a65d2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9d019487d6dfd10c9f4801c55a2a65d2">&#9670;&nbsp;</a></span>GetLock()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool GetLock </td>
          <td>(</td>
          <td class="paramtype">std::string const &amp;&#160;</td>
          <td class="paramname"><em>Lock</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>acquire lock and perform directory setup </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">Lock</td><td>defines a lock file that should be acquired to ensure only one Acquire class is in action at the time or an empty string if no lock file should be used. If set also all needed directories will be created and setup. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="af56f208869586464f3e478be784994a5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af56f208869586464f3e478be784994a5">&#9670;&nbsp;</a></span>PartialPresent()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">APT_PURE unsigned long long PartialPresent </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>the amount of data to be fetched that is already present on the filesystem. </dd></dl>

<p class="reference">References <a class="el" href="classpkgAcquire.xhtml#af54b860e41ab56ec44a007f3542dbe82">ItemsBegin()</a>, and <a class="el" href="classpkgAcquire.xhtml#a06f41681fab7fd54db89fa55c09fac43">ItemsEnd()</a>.</p>

</div>
</div>
<a id="a67678d9efe826f5824f2e8fc0e812338"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a67678d9efe826f5824f2e8fc0e812338">&#9670;&nbsp;</a></span>QueueName()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">string QueueName </td>
          <td>(</td>
          <td class="paramtype">std::string&#160;</td>
          <td class="paramname"><em>URI</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structpkgAcquire_1_1MethodConfig.xhtml">MethodConfig</a> const *&amp;&#160;</td>
          <td class="paramname"><em>Config</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Determine the fetch method and queue of a <a class="el" href="classURI.xhtml">URI</a>. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir"></td><td class="paramname"><a class="el" href="classURI.xhtml">URI</a></td><td>The <a class="el" href="classURI.xhtml">URI</a> to fetch.</td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">Config</td><td>A location in which to place the method via which the <a class="el" href="classURI.xhtml">URI</a> is to be fetched.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>the string-name of the queue in which a fetch request for the given <a class="el" href="classURI.xhtml">URI</a> should be placed. </dd></dl>

<p class="reference">References <a class="el" href="classpkgAcquire.xhtml#a25c57bcf8cdbeb6439120a35d90366d8">Debug</a>, <a class="el" href="classpkgAcquire.xhtml#ad698ed345d50318b53f3cc3ae43190db">GetConfig()</a>, <a class="el" href="classpkgAcquire.xhtml#aedefc2c8ff9f8aa323d296085f969555adfbf4cb90b4209e5981227965246d8f0">QueueAccess</a>, <a class="el" href="classpkgAcquire.xhtml#a9e42b66f176afafc1c75e78289e80e76">Queues</a>, and <a class="el" href="structpkgAcquire_1_1MethodConfig.xhtml#a73e5dd8b9abd83a562ded9c050af4fc5">pkgAcquire::MethodConfig::SingleInstance</a>.</p>

<p class="reference">Referenced by <a class="el" href="classpkgAcquire.xhtml#adff4865b0b932d7c8dae0aee44006c13">Enqueue()</a>.</p>

</div>
</div>
<a id="af15888f17717fe69c2a9d4a3f511b4a8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af15888f17717fe69c2a9d4a3f511b4a8">&#9670;&nbsp;</a></span>Run()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classpkgAcquire.xhtml#ad45c2d8ba7020a5b66bb0563cc773820">pkgAcquire::RunResult</a> Run </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>PulseInterval</em> = <code>500000</code></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Download all the items that have been <a class="el" href="classpkgAcquire.xhtml#a81c2ed5c92ad099344f44cfd9ebdb249" title="Add the given item to the list of items.">Add()</a>ed to this download process. </p>
<p>This method will block until the download completes, invoking methods on <a class="el" href="classpkgAcquire.xhtml#aa7f97da72ceb8761a1cda178c778ca7c" title="The progress indicator for this download.">Log</a> to report on the progress of the download.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">PulseInterval</td><td>The method <a class="el" href="classpkgAcquireStatus.xhtml#a3b094d1d0cbeadde35a2f09d6e60bf3f" title="Periodically invoked while the Acquire process is underway.">pkgAcquireStatus::Pulse</a> will be invoked on <a class="el" href="classpkgAcquire.xhtml#aa7f97da72ceb8761a1cda178c778ca7c" title="The progress indicator for this download.">Log</a> at intervals of PulseInterval milliseconds.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>the result of the download. </dd></dl>

<p class="reference">References <a class="el" href="classpkgAcquire.xhtml#ad45c2d8ba7020a5b66bb0563cc773820ad1e026338c0200900908a176717682b8">Cancelled</a>, <a class="el" href="classpkgAcquire.xhtml#ad45c2d8ba7020a5b66bb0563cc773820a45a66636ecd16b869e4aadd738813583">Continue</a>, <a class="el" href="classpkgAcquire.xhtml#ad45c2d8ba7020a5b66bb0563cc773820a1f506c828f4945d6b5a7bf71445f7d54">Failed</a>, <a class="el" href="classpkgAcquire.xhtml#a8089d1f0a2e10710afe1d1488a1f1f72">Items</a>, <a class="el" href="classpkgAcquire.xhtml#aa7f97da72ceb8761a1cda178c778ca7c">Log</a>, <a class="el" href="classpkgAcquireStatus.xhtml#a3b094d1d0cbeadde35a2f09d6e60bf3f">pkgAcquireStatus::Pulse()</a>, <a class="el" href="classpkgAcquire.xhtml#a9e42b66f176afafc1c75e78289e80e76">Queues</a>, <a class="el" href="classpkgAcquire.xhtml#a68b95ec422d1a58106cf8384c3f613a9">RunFdsSane()</a>, <a class="el" href="classpkgAcquire.xhtml#ae2e97f1ebd7c956e2c68d1209eabd4b1">Running</a>, <a class="el" href="classpkgAcquire.xhtml#a7d36ab39eb6238a71b574a40730fd469">SetFds()</a>, <a class="el" href="classpkgAcquireStatus.xhtml#a07aaf1227e4d645f15e0a964f54ef291">pkgAcquireStatus::Start()</a>, <a class="el" href="classpkgAcquireStatus.xhtml#a17a237457e57625296e6b24feb19c60a">pkgAcquireStatus::Stop()</a>, <a class="el" href="classpkgAcquire.xhtml#abc16dbbd88d0020e00b57ef0dce9471a">ToFetch</a>, <a class="el" href="classpkgAcquireStatus.xhtml#a75386dbaef64dae27df6f182185de329">pkgAcquireStatus::Update</a>, and <a class="el" href="classpkgAcquire.xhtml#adfb69296d9a50a92927df7c30e56be2e">Workers</a>.</p>

</div>
</div>
<a id="a68b95ec422d1a58106cf8384c3f613a9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a68b95ec422d1a58106cf8384c3f613a9">&#9670;&nbsp;</a></span>RunFdsSane()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool RunFdsSane </td>
          <td>(</td>
          <td class="paramtype">fd_set *&#160;</td>
          <td class="paramname"><em>RSet</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">fd_set *&#160;</td>
          <td class="paramname"><em>WSet</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Handle input from and output to file descriptors which select() has determined are ready. The default implementation dispatches to all active downloads.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">RSet</td><td>The set of file descriptors that are ready for input.</td></tr>
    <tr><td class="paramname">WSet</td><td>The set of file descriptors that are ready for output.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>false if there is an error condition on one of the fds </dd></dl>

<p class="reference">References <a class="el" href="classpkgAcquire.xhtml#adfb69296d9a50a92927df7c30e56be2e">Workers</a>.</p>

<p class="reference">Referenced by <a class="el" href="classpkgAcquire.xhtml#af15888f17717fe69c2a9d4a3f511b4a8">Run()</a>.</p>

</div>
</div>
<a id="a7d36ab39eb6238a71b574a40730fd469"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7d36ab39eb6238a71b574a40730fd469">&#9670;&nbsp;</a></span>SetFds()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void SetFds </td>
          <td>(</td>
          <td class="paramtype">int &amp;&#160;</td>
          <td class="paramname"><em>Fd</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">fd_set *&#160;</td>
          <td class="paramname"><em>RSet</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">fd_set *&#160;</td>
          <td class="paramname"><em>WSet</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Build up the set of file descriptors upon which select() should block. </p>
<p>The default implementation inserts the file descriptors corresponding to active downloads.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[out]</td><td class="paramname">Fd</td><td>The largest file descriptor in the generated sets.</td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">RSet</td><td>The set of file descriptors that should be watched for input.</td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">WSet</td><td>The set of file descriptors that should be watched for output. </td></tr>
  </table>
  </dd>
</dl>

<p class="reference">References <a class="el" href="classpkgAcquire.xhtml#adfb69296d9a50a92927df7c30e56be2e">Workers</a>.</p>

<p class="reference">Referenced by <a class="el" href="classpkgAcquire.xhtml#af15888f17717fe69c2a9d4a3f511b4a8">Run()</a>.</p>

</div>
</div>
<a id="a155b1c5f08787829418fc297bfc5d1d5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a155b1c5f08787829418fc297bfc5d1d5">&#9670;&nbsp;</a></span>TotalNeeded()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">APT_PURE unsigned long long TotalNeeded </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>the total size in bytes of all the items included in this download. </dd></dl>

<p class="reference">References <a class="el" href="classpkgAcquire.xhtml#af54b860e41ab56ec44a007f3542dbe82">ItemsBegin()</a>, and <a class="el" href="classpkgAcquire.xhtml#a06f41681fab7fd54db89fa55c09fac43">ItemsEnd()</a>.</p>

</div>
</div>
<a id="a03a67f9076e4dd4a46bb429a9b1f5164"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a03a67f9076e4dd4a46bb429a9b1f5164">&#9670;&nbsp;</a></span>UriBegin()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classpkgAcquire_1_1UriIterator.xhtml">pkgAcquire::UriIterator</a> UriBegin </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the head of the list of enqueued item URIs. </p>
<p>This iterator will step over every element of every active queue. </p>

<p class="reference">References <a class="el" href="classpkgAcquire.xhtml#a9e42b66f176afafc1c75e78289e80e76">Queues</a>.</p>

</div>
</div>
<a id="a1670b365447a9c9262393be646dc0c83"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1670b365447a9c9262393be646dc0c83">&#9670;&nbsp;</a></span>WorkersBegin()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classpkgAcquire_1_1Worker.xhtml">Worker</a>* WorkersBegin </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Get the first <a class="el" href="classpkgAcquire_1_1Worker.xhtml" title="A fetch subprocess.">Worker</a> object. </p>
<dl class="section return"><dt>Returns</dt><dd>the first active worker in this download process. </dd></dl>

<p class="reference">References <a class="el" href="classpkgAcquire.xhtml#adfb69296d9a50a92927df7c30e56be2e">Workers</a>.</p>

<p class="reference">Referenced by <a class="el" href="classpkgAcquireStatus.xhtml#a3b094d1d0cbeadde35a2f09d6e60bf3f">pkgAcquireStatus::Pulse()</a>.</p>

</div>
</div>
<a id="ae88f77b544d05718eb98cf4c93bad3e8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae88f77b544d05718eb98cf4c93bad3e8">&#9670;&nbsp;</a></span>WorkerStep()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classpkgAcquire_1_1Worker.xhtml">pkgAcquire::Worker</a> * WorkerStep </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classpkgAcquire_1_1Worker.xhtml">Worker</a> *&#160;</td>
          <td class="paramname"><em>I</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Advance to the next <a class="el" href="classpkgAcquire_1_1Worker.xhtml" title="A fetch subprocess.">Worker</a> object. </p>
<dl class="section return"><dt>Returns</dt><dd>the worker immediately following I, or <b>NULL</b> if none exists. </dd></dl>

<p class="reference">Referenced by <a class="el" href="classpkgAcquireStatus.xhtml#a3b094d1d0cbeadde35a2f09d6e60bf3f">pkgAcquireStatus::Pulse()</a>.</p>

</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a id="ab04e9ee398f825f50e4f1ea7eaf37f77"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab04e9ee398f825f50e4f1ea7eaf37f77">&#9670;&nbsp;</a></span>Configs</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structpkgAcquire_1_1MethodConfig.xhtml">MethodConfig</a>* Configs</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>The head of the list of acquire method configurations. </p>
<p>Each protocol (http, ftp, gzip, etc) via which files can be fetched can have a representation in this list. The configuration data is filled in by parsing the 100 Capabilities string output by a method on startup (see pkgAcqMethod::pkgAcqMethod and <a class="el" href="classpkgAcquire.xhtml#ad698ed345d50318b53f3cc3ae43190db" title="Retrieve information about a fetch method by name.">pkgAcquire::GetConfig</a>).</p>
<dl class="todo"><dt><b><a class="el" href="todo.xhtml#_todo000021">Todo:</a></b></dt><dd>why a hand-managed config dictionary instead of std::map? </dd></dl>

<p class="reference">Referenced by <a class="el" href="classpkgAcquire.xhtml#ad698ed345d50318b53f3cc3ae43190db">GetConfig()</a>, and <a class="el" href="classpkgAcquire.xhtml#a63b3097945b28966895045ffeaeb658c">~pkgAcquire()</a>.</p>

</div>
</div>
<a id="a8089d1f0a2e10710afe1d1488a1f1f72"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8089d1f0a2e10710afe1d1488a1f1f72">&#9670;&nbsp;</a></span>Items</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::vector&lt;<a class="el" href="classpkgAcquire_1_1Item.xhtml">Item</a> *&gt; Items</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>A list of items to download. </p>
<p>This is built monotonically as items are created and only emptied when the download shuts down. </p>

<p class="reference">Referenced by <a class="el" href="classpkgAcquire.xhtml#a81c2ed5c92ad099344f44cfd9ebdb249">Add()</a>, <a class="el" href="classpkgAcquire.xhtml#aae5af42b94e25de2d233e1bfa6b0688c">Clean()</a>, <a class="el" href="classpkgAcquire_1_1Queue.xhtml#a5b2dd956b1adc90b13d47e26121d5486">pkgAcquire::Queue::Cycle()</a>, <a class="el" href="classpkgAcquire_1_1Queue.xhtml#a875744fa53902d8821377a9222166a47">pkgAcquire::Queue::Dequeue()</a>, <a class="el" href="classpkgAcquire_1_1Queue.xhtml#a2af342681f220fe125323f83c45dd074">pkgAcquire::Queue::Enqueue()</a>, <a class="el" href="classpkgAcquire_1_1Queue.xhtml#ac539c6aecc512845b56ae705f7686a58">pkgAcquire::Queue::FindItem()</a>, <a class="el" href="classpkgAcquire.xhtml#af54b860e41ab56ec44a007f3542dbe82">ItemsBegin()</a>, <a class="el" href="classpkgAcquire.xhtml#a06f41681fab7fd54db89fa55c09fac43">ItemsEnd()</a>, <a class="el" href="classpkgAcquire.xhtml#ae3e5902c5c7d0b5c6856e6761205a39c">Remove()</a>, <a class="el" href="classpkgAcquire.xhtml#af15888f17717fe69c2a9d4a3f511b4a8">Run()</a>, <a class="el" href="classpkgAcquire.xhtml#ac5f038c2b480cf9ef5e19e3eba8dbaf9">Shutdown()</a>, <a class="el" href="classpkgAcquire_1_1Queue.xhtml#ab4442bc1bb880bd798d3c08a153364b8">pkgAcquire::Queue::Startup()</a>, and <a class="el" href="classpkgAcquire_1_1Queue.xhtml#a240bdcfcc136e53aeaac3aa454cc26bf">pkgAcquire::Queue::~Queue()</a>.</p>

</div>
</div>
<a id="a9e42b66f176afafc1c75e78289e80e76"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9e42b66f176afafc1c75e78289e80e76">&#9670;&nbsp;</a></span>Queues</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classpkgAcquire_1_1Queue.xhtml">Queue</a>* Queues</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>The head of the list of active queues. </p>
<dl class="todo"><dt><b><a class="el" href="todo.xhtml#_todo000019">Todo:</a></b></dt><dd>why a hand-managed list of queues instead of std::list or std::set? </dd></dl>

<p class="reference">Referenced by <a class="el" href="classpkgAcquire.xhtml#abf4fe627ab803887ecd2a8af30f17147">Bump()</a>, <a class="el" href="classpkgAcquire.xhtml#ad88e269d0297439604f25eb9c1309286">Dequeue()</a>, <a class="el" href="classpkgAcquire.xhtml#adff4865b0b932d7c8dae0aee44006c13">Enqueue()</a>, <a class="el" href="classpkgAcquire.xhtml#a67678d9efe826f5824f2e8fc0e812338">QueueName()</a>, <a class="el" href="classpkgAcquire.xhtml#af15888f17717fe69c2a9d4a3f511b4a8">Run()</a>, <a class="el" href="classpkgAcquire.xhtml#ac5f038c2b480cf9ef5e19e3eba8dbaf9">Shutdown()</a>, and <a class="el" href="classpkgAcquire.xhtml#a03a67f9076e4dd4a46bb429a9b1f5164">UriBegin()</a>.</p>

</div>
</div>
<a id="adfb69296d9a50a92927df7c30e56be2e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adfb69296d9a50a92927df7c30e56be2e">&#9670;&nbsp;</a></span>Workers</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classpkgAcquire_1_1Worker.xhtml">Worker</a>* Workers</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>The head of the list of active workers. </p>
<dl class="todo"><dt><b><a class="el" href="todo.xhtml#_todo000020">Todo:</a></b></dt><dd>why a hand-managed list of workers instead of std::list or std::set? </dd></dl>

<p class="reference">Referenced by <a class="el" href="classpkgAcquire.xhtml#a4342a42ca975e033e3e859480b0c45ee">Add()</a>, <a class="el" href="classpkgAcquire_1_1Queue.xhtml#a5b2dd956b1adc90b13d47e26121d5486">pkgAcquire::Queue::Cycle()</a>, <a class="el" href="classpkgAcquire.xhtml#a8ec623661f28cc681c1145186227ab60">Remove()</a>, <a class="el" href="classpkgAcquire.xhtml#af15888f17717fe69c2a9d4a3f511b4a8">Run()</a>, <a class="el" href="classpkgAcquire.xhtml#a68b95ec422d1a58106cf8384c3f613a9">RunFdsSane()</a>, <a class="el" href="classpkgAcquire.xhtml#a7d36ab39eb6238a71b574a40730fd469">SetFds()</a>, <a class="el" href="classpkgAcquire_1_1Queue.xhtml#a0483a6e5db0c15e5445bcc6a00262204">pkgAcquire::Queue::Shutdown()</a>, <a class="el" href="classpkgAcquire_1_1Queue.xhtml#ab4442bc1bb880bd798d3c08a153364b8">pkgAcquire::Queue::Startup()</a>, and <a class="el" href="classpkgAcquire.xhtml#a1670b365447a9c9262393be646dc0c83">WorkersBegin()</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>apt-pkg/<a class="el" href="acquire_8h_source.xhtml">acquire.h</a></li>
<li>apt-pkg/acquire.cc</li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.15
</small></address>
</body>
</html>