function generate_autotoc() { var toc = $("#autotoc").append(''); if(toc.length > 0) { // an autotoc has been requested toc = toc.find('ul'); var indices = new Array(); indices[0] = 0; indices[1] = 0; indices[2] = 0; $("h1, h2, h3").each(function(i) { var current = $(this); var levelTag = current[0].tagName.charAt(1); var cur_id = current.attr("id"); indices[levelTag-1]+=1; var prefix=indices[0]; if (levelTag >1) prefix+="."+indices[1]; if (levelTag >2) prefix+="."+indices[2]; current.html(prefix + " " + current.html()); for(var l = levelTag; l < 3; ++l){ indices[l] = 0; } if(cur_id == undefined) { current.attr('id', 'title' + i); current.addClass('anchor'); toc.append("
  • " + current.text() + "
  • "); } else { toc.append("
  • " + current.text() + "
  • "); } }); } } // throw a stick at the modules array and hijack gotoNode // for our own evil purposes $(document).ready(function() { if (typeof modules !== 'undefined') { // modules has been loaded, that means we are inside the // documentation of a package NAVTREE[0][2][1][1] = modules[0][1]; NAVTREE[0][2][1][2] = modules[0][2]; // override gotoNode from navtree.js gotoNode = function (o,subIndex,root,hash,relpath) { var nti = navTreeSubIndices[subIndex][root+hash]; if (!nti) { nti = navTreeSubIndices[subIndex][root]; } if(nti && (nti[0] === 1 && nti[0])) { nti.splice(1, 1); } o.breadcrumbs = $.extend(true, [], nti ? nti : navTreeSubIndices[subIndex][root]); if (!o.breadcrumbs && root!=NAVTREE[0][1]) { // fallback: show index navTo(o,NAVTREE[0][1],"",relpath); $('.item').removeClass('selected'); $('.item').removeAttr('id'); } if (o.breadcrumbs) { o.breadcrumbs.unshift(0); // add 0 for root node showNode(o, o.node, 0, hash); } } } // set-up footnote generation $("#doc-content").append('
      '); $("body").footnotes(); generate_autotoc(); }); /* * A jQuery plugin by Brian Holt that will search the selected blocks for * specially-defined footnote elements. If found, these elements will be * moved to a footnotes section and links to and from the footnotes will * be created. * * See http://www.planetholt.com/articles/jQuery-Footnotes * for full documentation. * * By default, footnotes will be found in SPANs with the footnote class, * and in BLOCKQUOTEs with a TITLE attribute. * * Thanks to CSSNewbies.com for the general idea, which I have enhanced * and implemented with as a jQuery plugin. * * Copyright 2008-2009 Brian Holt. * Licensed under the LGPL license. See * http://www.gnu.org/licenses/lgpl-3.0-standalone.html * * Version 1.2.2 */ (function(c){c.fn.footnotes=function(d){var e=c.extend({},c.fn.footnotes.defaults,d);return this.each(function(f){b("INFO: Building footnotes for "+(f+1)+"...",e.debugMode);c(e.footnotes,this).addClass(e.autoFootnoteClass);var h=(""===e.contentBlock)?c(this):c(e.contentBlock,this),g=e.orderedList?"
        ":"