merge with HEAD
authorMathieu Lacage <mathieu.lacage@sophia.inria.fr>
Fri Apr 04 19:02:34 2008 +0200 (22 months ago)
changeset 2878580a733e49d6
parent 2877 1e8a42e5d4c1
parent 2875 010d2708bb68
child 2879 4e5aa7f1e2a0
child 2881 81d1080cd0ae
merge with HEAD
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/doc/tutorial/Makefile	Fri Apr 04 19:02:34 2008 +0200
     1.3 @@ -0,0 +1,34 @@
     1.4 +TEXI2HTML = texi2html
     1.5 +TEXI2PDF = texi2dvi --pdf
     1.6 +EPSTOPDF = epstopdf
     1.7 +TGIF = tgif 
     1.8 +CONVERT = convert
     1.9 +CSS = --css-include=tutorial.css
    1.10 +SPLIT = --split section
    1.11 +
    1.12 +TGIF_SOURCES = helpers.obj 
    1.13 +TGIF_EPS = ${TGIF_SOURCES:.obj=.eps}
    1.14 +TGIF_PNG = ${TGIF_SOURCES:.obj=.eps}
    1.15 +
    1.16 +all:  images html split-html pdf
    1.17 +
    1.18 +# Note:  tgif requires a valid x display to convert from .obj to .png.  
    1.19 +#        If running this makefile on a remote console, the X virtual frame
    1.20 +#        buffer may be needed (xorg-x11-server-Xvfb) to provide a "fake"
    1.21 +#        display
    1.22 +images:
    1.23 +	cd figures/; $(TGIF) -print -eps $(TGIF_SOURCES) 
    1.24 +	cd figures/; $(TGIF) -print -png $(TGIF_SOURCES) 
    1.25 +	cd figures/; $(foreach FILE,$(TGIF_EPS),$(EPSTOPDF) $(FILE);)
    1.26 +
    1.27 +html: images
    1.28 +	$(TEXI2HTML) ${CSS} tutorial.texi
    1.29 +
    1.30 +split-html: images
    1.31 +	$(TEXI2HTML) ${CSS} ${SPLIT} tutorial.texi
    1.32 +
    1.33 +pdf: images
    1.34 +	$(TEXI2PDF) tutorial.texi
    1.35 +
    1.36 +clean:
    1.37 +	rm -rf tutorial.aux tutorial.cp tutorial.cps tutorial.fn tutorial.ky tutorial.pg tutorial.tp tutorial.vr tutorial.toc tutorial.log tutorial.pdf tutorial.html tutorial/ 
     2.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     2.2 +++ b/doc/tutorial/figures/README	Fri Apr 04 19:02:34 2008 +0200
     2.3 @@ -0,0 +1,9 @@
     2.4 +Please write image files in a vector graphics format, when possible, and
     2.5 +generate the .png and .pdf versions on the fly (see ../Makefile).  
     2.6 +
     2.7 +Recommended tools are dia, tgif, and xfig.  Store the .dia, .obj, or .fig 
     2.8 +versions in mercurial, but not the .png or .pdfs.
     2.9 +
    2.10 +Note:  tgif can convert from .obj to .pdf, but the pdf that results takes
    2.11 +up a whole page.  Instead, we convert to an intermediate .eps step, and
    2.12 +then run epstopdf.
     3.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     3.2 +++ b/doc/tutorial/figures/helpers.obj	Fri Apr 04 19:02:34 2008 +0200
     3.3 @@ -0,0 +1,115 @@
     3.4 +%TGIF 4.1.43-QPL
     3.5 +state(0,37,100.000,0,0,0,32,1,9,1,1,0,0,1,2,1,0,'Courier',0,80640,0,2,0,10,0,0,1,1,0,16,0,0,1,1,1,1,1088,1408,1,0,2880,0).
     3.6 +%
     3.7 +% @(#)$Header$
     3.8 +% %W%
     3.9 +%
    3.10 +unit("1 pixel/pixel").
    3.11 +color_info(11,65535,0,[
    3.12 +	"magenta", 65535, 0, 65535, 65535, 0, 65535, 1,
    3.13 +	"red", 65535, 0, 0, 65535, 0, 0, 1,
    3.14 +	"green", 0, 65535, 0, 0, 65535, 0, 1,
    3.15 +	"blue", 0, 0, 65535, 0, 0, 65535, 1,
    3.16 +	"yellow", 65535, 65535, 0, 65535, 65535, 0, 1,
    3.17 +	"pink", 65535, 49344, 52171, 65535, 49344, 52171, 1,
    3.18 +	"cyan", 0, 65535, 65535, 0, 65535, 65535, 1,
    3.19 +	"CadetBlue", 24415, 40606, 41120, 24415, 40606, 41120, 1,
    3.20 +	"white", 65535, 65535, 65535, 65535, 65535, 65535, 1,
    3.21 +	"black", 0, 0, 0, 0, 0, 0, 1,
    3.22 +	"DarkSlateGray", 12079, 20303, 20303, 12079, 20303, 20303, 1
    3.23 +]).
    3.24 +script_frac("0.6").
    3.25 +fg_bg_colors('black','white').
    3.26 +dont_reencode("FFDingbests:ZapfDingbats").
    3.27 +page(1,"",1,'').
    3.28 +text('black',272,195,2,0,1,248,36,0,13,5,0,0,0,0,2,248,36,0,0,"",0,0,0,0,208,'',[
    3.29 +minilines(248,36,0,0,0,0,0,[
    3.30 +mini_line(200,13,5,0,0,0,[
    3.31 +str_block(0,200,13,5,0,-8,0,0,0,[
    3.32 +str_seg('black','Courier',0,80640,200,13,5,0,-8,0,0,0,0,0,
    3.33 +	"low-level APIs (all src/ ")])
    3.34 +]),
    3.35 +mini_line(248,13,5,0,0,0,[
    3.36 +str_block(0,248,13,5,0,-2,0,0,0,[
    3.37 +str_seg('black','Courier',0,80640,248,13,5,0,-2,0,0,0,0,0,
    3.38 +	"directories except src/helper/)")])
    3.39 +])
    3.40 +])]).
    3.41 +rcbox('black','',96,240,384,288,5,1,1,0,16,2,0,0,0,0,'1',0,[
    3.42 +]).
    3.43 +text('black',192,259,1,0,1,112,18,3,13,5,2,0,0,0,2,112,18,0,0,"",0,0,0,0,272,'',[
    3.44 +minilines(112,18,0,0,0,0,0,[
    3.45 +mini_line(112,13,5,0,0,0,[
    3.46 +str_block(0,112,13,5,0,0,0,0,0,[
    3.47 +str_seg('black','Courier',0,80640,112,13,5,0,0,0,0,0,0,0,
    3.48 +	"ns-3 simulator")])
    3.49 +])
    3.50 +])]).
    3.51 +poly('black','',2,[
    3.52 +	272,208,240,240],0,1,1,17,0,0,2,0,0,0,0,'1',0,0,
    3.53 +    "0","",[
    3.54 +    0,8,3,0,'8','3','0'],[0,8,3,0,'8','3','0'],[
    3.55 +]).
    3.56 +poly('black','',2,[
    3.57 +	240,176,240,240],1,1,1,18,0,0,0,0,0,0,0,'1',0,0,
    3.58 +    "0","",[
    3.59 +    0,8,3,0,'8','3','0'],[0,8,3,0,'8','3','0'],[
    3.60 +]).
    3.61 +rcbox('black','',176,128,384,176,5,1,1,0,16,25,0,0,0,0,'1',0,[
    3.62 +]).
    3.63 +text('black',192,131,2,0,1,120,36,26,13,5,2,0,0,0,2,120,36,0,0,"",0,0,0,0,144,'',[
    3.64 +minilines(120,36,0,0,0,0,0,[
    3.65 +mini_line(120,13,5,0,0,0,[
    3.66 +str_block(0,120,13,5,0,-1,0,0,0,[
    3.67 +str_seg('black','Courier',0,80640,120,13,5,0,-1,0,0,0,0,0,
    3.68 +	"ns-3 helper API")])
    3.69 +]),
    3.70 +mini_line(96,13,5,0,0,0,[
    3.71 +str_block(0,96,13,5,0,-2,0,0,0,[
    3.72 +str_seg('black','Courier',0,80640,96,13,5,0,-2,0,0,0,0,0,
    3.73 +	"(src/helper)")])
    3.74 +])
    3.75 +])]).
    3.76 +rcbox('black','',96,16,384,64,0,1,1,0,16,32,0,0,0,0,'1',0,[
    3.77 +]).
    3.78 +poly('black','',2,[
    3.79 +	240,64,240,128],1,1,1,36,0,0,0,0,0,0,0,'1',0,0,
    3.80 +    "0","",[
    3.81 +    0,8,3,0,'8','3','0'],[0,8,3,0,'8','3','0'],[
    3.82 +]).
    3.83 +text('black',272,83,2,0,1,200,36,40,13,5,0,0,0,0,2,200,36,0,0,"",0,0,0,0,96,'',[
    3.84 +minilines(200,36,0,0,0,0,0,[
    3.85 +mini_line(200,13,5,0,0,0,[
    3.86 +str_block(0,200,13,5,0,-2,0,0,0,[
    3.87 +str_seg('black','Courier',0,80640,200,13,5,0,-2,0,0,0,0,0,
    3.88 +	"helper APIs (src/helper/)")])
    3.89 +]),
    3.90 +mini_line(192,13,5,0,0,0,[
    3.91 +str_block(0,192,13,5,0,-1,0,0,0,[
    3.92 +str_seg('black','Courier',0,80640,192,13,5,0,-1,0,0,0,0,0,
    3.93 +	"call into low-level APIs")])
    3.94 +])
    3.95 +])]).
    3.96 +poly('black','',2,[
    3.97 +	272,96,240,128],0,1,1,41,0,0,2,0,0,0,0,'1',0,0,
    3.98 +    "0","",[
    3.99 +    0,8,3,0,'8','3','0'],[0,8,3,0,'8','3','0'],[
   3.100 +]).
   3.101 +text('black',128,19,2,0,1,232,36,47,13,5,0,0,0,0,2,232,36,0,0,"",0,0,0,0,32,'',[
   3.102 +minilines(232,36,0,0,0,0,0,[
   3.103 +mini_line(224,13,5,0,0,0,[
   3.104 +str_block(0,224,13,5,0,-2,0,0,0,[
   3.105 +str_seg('black','Courier',0,80640,224,13,5,0,-2,0,0,0,0,0,
   3.106 +	"ns-3 scripts (main programs)")])
   3.107 +]),
   3.108 +mini_line(232,13,5,0,0,0,[
   3.109 +str_block(0,232,13,5,0,-1,0,0,0,[
   3.110 +str_seg('black','Courier',0,80640,232,13,5,0,-1,0,0,0,0,0,
   3.111 +	"- may use either or both APIs")])
   3.112 +])
   3.113 +])]).
   3.114 +poly('black','',2,[
   3.115 +	144,64,144,240],1,1,1,50,0,0,0,0,0,0,0,'1',0,0,
   3.116 +    "0","",[
   3.117 +    0,8,3,0,'8','3','0'],[0,8,3,0,'8','3','0'],[
   3.118 +]).
     4.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     4.2 +++ b/doc/tutorial/helpers.texi	Fri Apr 04 19:02:34 2008 +0200
     4.3 @@ -0,0 +1,20 @@
     4.4 +@node Helper Functions
     4.5 +@chapter Helper Functions
     4.6 +@anchor{chap:Helpers}
     4.7 +This chapter describes an intermediate API for the simulator; what we
     4.8 +call the "helper API".  The helper API is implemented in 
     4.9 +@code{src/helper/} directory; it depends on (and wraps) the low-level
    4.10 +API which is implemented everywhere else in @code{src/}.  The following
    4.11 +figure shows this relationship.
    4.12 +@center @image{figures/helpers,,,,png}
    4.13 +
    4.14 +The use of the helper API is optional.  It has two main goals:
    4.15 +@itemize @bullet
    4.16 +@item Provide "syntactic sugar" to wrap a number of related low-level
    4.17 +API calls together, that would normally be grouped together often, into 
    4.18 +something that is more user-friendly.
    4.19 +@item Handle configuration of larger topological units (e.g., a set 
    4.20 +of nodes or a set of nodes on a particular link) . 
    4.21 +@end itemize
    4.22 +
    4.23 +(more to follow)
     5.1 --- a/doc/tutorial/output.texi	Fri Apr 04 19:02:03 2008 +0200
     5.2 +++ b/doc/tutorial/output.texi	Fri Apr 04 19:02:34 2008 +0200
     5.3 @@ -457,9 +457,6 @@
     5.4  the ASCII trace wrapper.  You are encouraged to take a look at the contents
     5.5  of these pcap files using your favorite pcap software (or Wireshark).
     5.6  
     5.7 -@node Statistics
     5.8 -@section Statistics
     5.9 -
    5.10  @node Advanced Tracing 
    5.11  @section Advanced Tracing 
    5.12  
     6.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     6.2 +++ b/doc/tutorial/statistics.texi	Fri Apr 04 19:02:34 2008 +0200
     6.3 @@ -0,0 +1,9 @@
     6.4 +@node Statistics
     6.5 +@chapter Statistics
     6.6 +@anchor{chap:Statistics}
     6.7 +
     6.8 +ns-3 does not presently have support for statistics (automatically generated
     6.9 +statistical output).  This is planned
    6.10 +for development later in 2008.  If you are interested in contributing,
    6.11 +please see @uref{http://www.nsnam.org/wiki/index.php/Suggested_Projects,,our suggested projects page} or contact the ns-developers
    6.12 +list.
     7.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     7.2 +++ b/doc/tutorial/tutorial.css	Fri Apr 04 19:02:34 2008 +0200
     7.3 @@ -0,0 +1,156 @@
     7.4 +body {
     7.5 +   font-family: "Trebuchet MS", "Bitstream Vera Sans", verdana, lucida, arial, helvetica, sans-serif;
     7.6 +   background: white;
     7.7 +   color: black;
     7.8 +   font-size: 11pt;
     7.9 +}
    7.10 +
    7.11 +h1, h2, h3, h4, h5, h6 {
    7.12 +#   color: #990000;
    7.13 +   color: #009999;
    7.14 +}
    7.15 +
    7.16 +pre {
    7.17 +   font-size: 10pt;
    7.18 +   background: #e0e0e0;
    7.19 +   color: black;
    7.20 +}
    7.21 +
    7.22 +a:link, a:visited {
    7.23 +   font-weight: normal;
    7.24 +   text-decoration: none;
    7.25 +   color: #0047b9;
    7.26 +}
    7.27 +
    7.28 +a:hover {
    7.29 +   font-weight: normal;
    7.30 +   text-decoration: underline;
    7.31 +   color: #0047b9;
    7.32 +}
    7.33 +
    7.34 +img {
    7.35 +    border: 0px;
    7.36 +}
    7.37 +
    7.38 +#main th {
    7.39 +   font-size: 12pt;
    7.40 +   background: #b0b0b0;
    7.41 +}
    7.42 +
    7.43 +.odd {
    7.44 +   font-size: 12pt;
    7.45 +   background: white;
    7.46 +}
    7.47 +
    7.48 +.even {
    7.49 +   font-size: 12pt;
    7.50 +   background: #e0e0e0;
    7.51 +}
    7.52 +
    7.53 +.answer {
    7.54 +   font-size: large;
    7.55 +   font-weight: bold;
    7.56 +}
    7.57 +
    7.58 +.answer p {
    7.59 +   font-size: 12pt;
    7.60 +   font-weight: normal;
    7.61 +}
    7.62 +
    7.63 +.answer ul {
    7.64 +   font-size: 12pt;
    7.65 +   font-weight: normal;
    7.66 +}
    7.67 +
    7.68 +#container {
    7.69 +  position: absolute;
    7.70 +  width: 100%;
    7.71 +  height: 100%;
    7.72 +  top: 0px;
    7.73 +}
    7.74 +
    7.75 +#feedback {
    7.76 +  color: #b0b0b0;
    7.77 +  font-size: 9pt;
    7.78 +  font-style: italic;
    7.79 +}
    7.80 +
    7.81 +#header {
    7.82 +   position: absolute;
    7.83 +   margin: 0px;
    7.84 +   top: 10px;
    7.85 +   height:96px;
    7.86 +   left: 175px;
    7.87 +   right: 10em;
    7.88 +   bottom: auto;
    7.89 +   background: white;
    7.90 +   clear: both;
    7.91 +}
    7.92 +
    7.93 +#middle {
    7.94 +   position: absolute;
    7.95 +   left: 0;
    7.96 +   height: auto;
    7.97 +   width: 100%;
    7.98 +}
    7.99 +
   7.100 +#main {
   7.101 +   position: absolute;
   7.102 +   top: 50px;
   7.103 +   left: 175px;
   7.104 +   right: 100px;
   7.105 +   background: white;
   7.106 +   padding: 0em 0em 0em 0em;
   7.107 +}
   7.108 +
   7.109 +#navbar {
   7.110 +   position: absolute;
   7.111 +   top: 75px;
   7.112 +   left: 0em;
   7.113 +   width: 146px;
   7.114 +   padding: 0px;
   7.115 +   margin: 0px;
   7.116 +   font-size: 10pt;
   7.117 +}
   7.118 +
   7.119 +#navbar a:link, #navbar a:visited {
   7.120 +   font-weight: normal;
   7.121 +   text-decoration: none;
   7.122 +   color: #0047b9;
   7.123 +}
   7.124 +
   7.125 +#navbar a:hover {
   7.126 +   font-weight: normal;
   7.127 +   text-decoration: underline;
   7.128 +   color: #0047b9;
   7.129 +}
   7.130 +
   7.131 +#navbar dl {
   7.132 +   width: 146px;
   7.133 +   padding: 0;
   7.134 +   margin: 0 0 10px 0px;
   7.135 +   background: #99ffff url(images/box_bottom2.gif) no-repeat bottom left;
   7.136 +}
   7.137 +
   7.138 +#navbar dt {
   7.139 +   padding: 6px 10px;
   7.140 +   font-size: 100%;
   7.141 +   font-weight: bold;
   7.142 +   background: #009999;
   7.143 +   margin: 0px;
   7.144 +   border-bottom: 1px solid #fff;
   7.145 +   color: white;
   7.146 +   background: #009999 url(images/box_top2.gif) no-repeat top left;
   7.147 +}
   7.148 +
   7.149 +#navbar dd {
   7.150 +   font-size: 100%;
   7.151 +   margin: 0 0 0 0px;
   7.152 +   padding: 6px 10px;
   7.153 +   color: #0047b9;
   7.154 +}
   7.155 +
   7.156 +dd#selected {
   7.157 +   background: #99ffff url(images/arrow.gif) no-repeat;
   7.158 +   background-position: 4px 10px;
   7.159 +}
     8.1 --- a/doc/tutorial/tutorial.texi	Fri Apr 04 19:02:03 2008 +0200
     8.2 +++ b/doc/tutorial/tutorial.texi	Fri Apr 04 19:02:34 2008 +0200
     8.3 @@ -109,10 +109,12 @@
     8.4  @include introduction.texi
     8.5  @include log.texi
     8.6  @include attributes.texi
     8.7 +@include statistics.texi
     8.8 +@include helpers.texi
     8.9  @include callbacks.texi
    8.10  @include output.texi
    8.11  @include routing.texi
    8.12 -@include other.texi
    8.13 +@c @include other.texi
    8.14  @include troubleshoot.texi
    8.15  
    8.16  @printindex cp