Index: code/trunk/doc/api/TracFooter.html
===================================================================
--- code/trunk/doc/api/TracFooter.html	(revision 2878)
+++ code/trunk/doc/api/TracFooter.html	(revision 2878)
@@ -0,0 +1,2 @@
+
+
Index: code/trunk/doc/api/TracHeader.html
===================================================================
--- code/trunk/doc/api/TracHeader.html	(revision 2878)
+++ code/trunk/doc/api/TracHeader.html	(revision 2878)
@@ -0,0 +1,2 @@
+<LINK HREF="doxygen.css" REL="stylesheet" TYPE="text/css">
+
Index: code/trunk/doc/api/doxy.config.in
===================================================================
--- code/trunk/doc/api/doxy.config.in	(revision 2876)
+++ code/trunk/doc/api/doxy.config.in	(revision 2878)
@@ -665,5 +665,5 @@
 # each generated HTML page. If it is left blank doxygen will generate a 
 # standard header.
-HTML_HEADER            = 
+HTML_HEADER            = @CMAKE_SOURCE_DIR@/doc/api/TracHeader.html
 
 
@@ -672,5 +672,5 @@
 # standard footer.
 
-HTML_FOOTER            = 
+HTML_FOOTER            = @CMAKE_SOURCE_DIR@/doc/api/TracFooter.html
 
 # The HTML_STYLESHEET tag can be used to specify a user-defined cascading 
@@ -681,5 +681,5 @@
 # stylesheet in the HTML output directory as well, or it will be erased!
 
-HTML_STYLESHEET        = 
+HTML_STYLESHEET        = @CMAKE_SOURCE_DIR@/doc/api/doxygen.css
 
 # If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes, 
Index: code/trunk/doc/api/doxygen.css
===================================================================
--- code/trunk/doc/api/doxygen.css	(revision 2878)
+++ code/trunk/doc/api/doxygen.css	(revision 2878)
@@ -0,0 +1,391 @@
+/* override a few trac styles */
+:link, :visited, :link:hover, :visited:hover {
+ border-bottom-style: none;
+}
+
+/* tabs */
+div.tabs *
+{
+  display: inline;
+}
+
+div.tabs ul
+{
+  display: block;
+  margin: 0em;
+  padding: 0.5em 0em;
+  font-size: 10px;
+  list-style: none;
+  text-align: left;
+}
+
+div.tabs li
+{
+  border-right: 1px solid #d7d7d7;
+  padding: 0em 0.75em;
+  white-space: nowrap;
+  margin: 3px;
+}
+
+div.tabs form
+{
+  padding: 0em 0.75em;
+  white-space: nowrap;
+  margin: 3px;
+}
+
+div.tabs #current a, div.tabs a:hover {
+  background-color: #fdc; /* blue: #eef3f5 */
+  padding: 3px;
+  border-width: 1px;
+  border-style: solid;
+  border-color: #d00; /* blue: #dedeee */
+  -moz-border-radius: 8px 8px 8px 8px;
+}
+
+div.tabs a {
+  padding: 3px;
+  border-width: 1px;
+  border-style: dotted;
+  border-color: #ffffff;
+  -moz-border-radius: 8px 8px 8px 8px;
+}
+
+/*
+div.tabs a:visited
+{
+  color: #2A3798;
+}
+*/
+
+h1 {
+  text-align: center;
+  font-size: 160%;
+}
+h2 {
+  font-size: 120%;
+}
+h3 {
+  font-size: 100%;
+}
+
+caption { font-weight: bold }
+div.qindex {
+  width: 100%;
+  background-color: #e8eef2;
+  border: 1px solid #84b0c7;
+  text-align: center;
+  margin: 2px;
+  padding: 2px;
+  line-height: 140%;
+}
+a.qindex {
+       text-decoration: none;
+       font-weight: bold;
+       color: #1A419D;
+}
+a.qindex:visited {
+       text-decoration: none;
+       font-weight: bold;
+       color: #1A419D
+}
+a.qindex:hover {
+  text-decoration: none;
+  background-color: #ddddff;
+}
+a.qindexHL {
+  text-decoration: none;
+  font-weight: bold;
+  background-color: #6666cc;
+  color: #ffffff;
+  border: 1px double #9295C2;
+}
+a.qindexHL:hover {
+  text-decoration: none;
+  background-color: #6666cc;
+  color: #ffffff;
+}
+a.qindexHL:visited { text-decoration: none; background-color: #6666cc; color: #ffffff }
+a.el { text-decoration: none; font-weight: bold }
+a.elRef { font-weight: bold }
+a.code:link { text-decoration: none; font-weight: normal; color: #0000FF}
+a.code:visited { text-decoration: none; font-weight: normal; color: #0000FF}
+a.codeRef:link { font-weight: normal; color: #0000FF}
+a.codeRef:visited { font-weight: normal; color: #0000FF}
+a:hover { text-decoration: none; background-color: #f2f2ff }
+dl.el { margin-left: -1cm }
+.fragment {
+       font-family: monospace, fixed;
+       font-size: 95%;
+}
+pre.fragment {
+  border: 1px solid #CCCCCC;
+  background-color: #f5f5f5;
+  margin-top: 4px;
+  margin-bottom: 4px;
+  margin-left: 2px;
+  margin-right: 8px;
+  padding-left: 6px;
+  padding-right: 6px;
+  padding-top: 4px;
+  padding-bottom: 4px;
+}
+div.ah { background-color: black; font-weight: bold; color: #ffffff; margin-bottom: 3px; margin-top: 3px }
+
+div.groupHeader {
+  margin-left: 16px;
+  margin-top: 12px;
+  margin-bottom: 6px;
+  font-weight: bold;
+}
+div.groupText {
+  margin-left: 16px;
+  font-style: italic;
+  font-size: 90%
+}
+td.indexkey {
+  background-color: #e8eef2;
+  font-weight: bold;
+  padding-right  : 10px;
+  padding-top    : 2px;
+  padding-left   : 10px;
+  padding-bottom : 2px;
+  margin-left    : 0px;
+  margin-right   : 0px;
+  margin-top     : 2px;
+  margin-bottom  : 2px;
+  border: 1px solid #CCCCCC;
+}
+td.indexvalue {
+  background-color: #e8eef2;
+  font-style: italic;
+  padding-right  : 10px;
+  padding-top    : 2px;
+  padding-left   : 10px;
+  padding-bottom : 2px;
+  margin-left    : 0px;
+  margin-right   : 0px;
+  margin-top     : 2px;
+  margin-bottom  : 2px;
+  border: 1px solid #CCCCCC;
+}
+tr.memlist {
+   background-color: #f0f0f0;
+}
+p.formulaDsp { text-align: center; }
+img.formulaDsp { }
+img.formulaInl { vertical-align: middle; }
+span.keyword       { color: #008000 }
+span.keywordtype   { color: #604020 }
+span.keywordflow   { color: #e08000 }
+span.comment       { color: #800000 }
+span.preprocessor  { color: #806020 }
+span.stringliteral { color: #002080 }
+span.charliteral   { color: #008080 }
+.mdescLeft {
+       padding: 0px 8px 4px 8px;
+  font-size: 80%;
+  font-style: italic;
+  background-color: #FAFAFA;
+  border-top: 1px none #E0E0E0;
+  border-right: 1px none #E0E0E0;
+  border-bottom: 1px none #E0E0E0;
+  border-left: 1px none #E0E0E0;
+  margin: 0px;
+}
+.mdescRight {
+       padding: 0px 8px 4px 8px;
+  font-size: 80%;
+  font-style: italic;
+  background-color: #FAFAFA;
+  border-top: 1px none #E0E0E0;
+  border-right: 1px none #E0E0E0;
+  border-bottom: 1px none #E0E0E0;
+  border-left: 1px none #E0E0E0;
+  margin: 0px;
+}
+.memItemLeft {
+  padding: 1px 0px 0px 8px;
+  margin: 4px;
+  border-top-width: 1px;
+  border-right-width: 1px;
+  border-bottom-width: 1px;
+  border-left-width: 1px;
+  border-top-color: #E0E0E0;
+  border-right-color: #E0E0E0;
+  border-bottom-color: #E0E0E0;
+  border-left-color: #E0E0E0;
+  border-top-style: solid;
+  border-right-style: none;
+  border-bottom-style: none;
+  border-left-style: none;
+  background-color: #FAFAFA;
+  font-size: 80%;
+}
+.memItemRight {
+  padding: 1px 8px 0px 8px;
+  margin: 4px;
+  border-top-width: 1px;
+  border-right-width: 1px;
+  border-bottom-width: 1px;
+  border-left-width: 1px;
+  border-top-color: #E0E0E0;
+  border-right-color: #E0E0E0;
+  border-bottom-color: #E0E0E0;
+  border-left-color: #E0E0E0;
+  border-top-style: solid;
+  border-right-style: none;
+  border-bottom-style: none;
+  border-left-style: none;
+  background-color: #FAFAFA;
+  font-size: 80%;
+}
+.memTemplItemLeft {
+  padding: 1px 0px 0px 8px;
+  margin: 4px;
+  border-top-width: 1px;
+  border-right-width: 1px;
+  border-bottom-width: 1px;
+  border-left-width: 1px;
+  border-top-color: #E0E0E0;
+  border-right-color: #E0E0E0;
+  border-bottom-color: #E0E0E0;
+  border-left-color: #E0E0E0;
+  border-top-style: none;
+  border-right-style: none;
+  border-bottom-style: none;
+  border-left-style: none;
+  background-color: #FAFAFA;
+  font-size: 80%;
+}
+.memTemplItemRight {
+  padding: 1px 8px 0px 8px;
+  margin: 4px;
+  border-top-width: 1px;
+  border-right-width: 1px;
+  border-bottom-width: 1px;
+  border-left-width: 1px;
+  border-top-color: #E0E0E0;
+  border-right-color: #E0E0E0;
+  border-bottom-color: #E0E0E0;
+  border-left-color: #E0E0E0;
+  border-top-style: none;
+  border-right-style: none;
+  border-bottom-style: none;
+  border-left-style: none;
+  background-color: #FAFAFA;
+  font-size: 80%;
+}
+.memTemplParams {
+  padding: 1px 0px 0px 8px;
+  margin: 4px;
+  border-top-width: 1px;
+  border-right-width: 1px;
+  border-bottom-width: 1px;
+  border-left-width: 1px;
+  border-top-color: #E0E0E0;
+  border-right-color: #E0E0E0;
+  border-bottom-color: #E0E0E0;
+  border-left-color: #E0E0E0;
+  border-top-style: solid;
+  border-right-style: none;
+  border-bottom-style: none;
+  border-left-style: none;
+  color: #606060;
+  background-color: #FAFAFA;
+  font-size: 80%;
+}
+.search     {
+  color: #003399;
+  font-weight: bold;
+}
+form.search {
+  font-size: 90%;
+  margin-bottom: 0px;
+  margin-top: 0px;
+}
+input.search {
+  /* font-size: 75%; */
+  color: #000080;
+  font-weight: normal;
+  background-color: #e8eef2;
+}
+td.tiny {
+  font-size: 75%;
+}
+.dirtab {
+  padding: 4px;
+  border-collapse: collapse;
+  border: 1px solid #84b0c7;
+}
+th.dirtab {
+  background: #e8eef2;
+  font-weight: bold;
+}
+hr {
+  height: 1px;
+  border: none;
+  border-top: 1px solid black;
+}
+/* Style for detailed member documentation */
+.memtemplate {
+  font-size: 80%;
+  color: #606060;
+  font-weight: normal;
+}
+.memnav {
+  background-color: #e8eef2;
+  border: 1px solid #84b0c7;
+  text-align: center;
+  margin: 2px;
+  margin-right: 15px;
+  padding: 2px;
+}
+.memitem {
+  padding: 4px;
+  background-color: #eef3f5;
+  border-width: 1px;
+  border-style: solid;
+  border-color: #dedeee;
+  -moz-border-radius: 8px 8px 8px 8px;
+}
+.memname {
+  white-space: nowrap;
+  font-weight: bold;
+}
+.memdoc{
+  padding-left: 10px;
+}
+.memproto {
+  background-color: #d5e1e8;
+  width: 100%;
+  border-width: 1px;
+  border-style: solid;
+  border-color: #84b0c7;
+  font-weight: bold;
+  -moz-border-radius: 8px 8px 8px 8px;
+}
+.paramkey {
+  text-align: right;
+}
+.paramtype {
+  white-space: nowrap;
+}
+.paramname {
+  color: #602020;
+  font-style: italic;
+}
+/* End Styling for detailed member documentation */
+/* for the tree view */
+.ftvtree {
+  font-family: sans-serif;
+  margin:0.5em;
+}
+.directory { font-size: 9pt; font-weight: bold; }
+.directory h3 { margin: 0px; margin-top: 1em; font-size: 11pt; }
+.directory > h3 { margin-top: 0; }
+.directory p { margin: 0px; white-space: nowrap; }
+.directory div { display: none; margin: 0px; }
+.directory img { vertical-align: -30%; }
+
+
