0807.2767/ba.cls
1: %%
2: %% This is file `ba.cls',
3: %% generated with the docstrip utility.
4: %%
5: %% The original source files were:
6: %%
7: %% ba.dtx  (with options: `bacls')
8: %% ===========================================================================
9: %% Bayesian Analysis Journal document class and packages for use with LaTeX 2e
10: %% 
11: %% 
12: %% Some macros and environments are modified versions of those given in
13: %% classes.dtx v1.4a 1999/01/07, copyrighted by The LaTeX3 Project.
14: %% 
15: %% \CharacterTable
16: %%  {Upper-case    \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
17: %%   Lower-case    \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
18: %%   Digits        \0\1\2\3\4\5\6\7\8\9
19: %%   Exclamation   \!     Double quote  \"     Hash (number) \#
20: %%   Dollar        \$     Percent       \%     Ampersand     \&
21: %%   Acute accent  \'     Left paren    \(     Right paren   \)
22: %%   Asterisk      \*     Plus          \+     Comma         \,
23: %%   Minus         \-     Point         \.     Solidus       \/
24: %%   Colon         \:     Semicolon     \;     Less than     \<
25: %%   Equals        \=     Greater than  \>     Question mark \?
26: %%   Commercial at \@     Left bracket  \[     Backslash     \\
27: %%   Right bracket \]     Circumflex    \^     Underscore    \_
28: %%   Grave accent  \`     Left brace    \{     Vertical bar  \|
29: %%   Right brace   \}     Tilde         \~}
30: %%
31: \NeedsTeXFormat{LaTeX2e}[1996/06/01]
32: \ProvidesClass{ba}
33:               [2001/12/17 v1.09
34:  Bayesian Analysis Journal document class]
35: \def\ba@Warning#1{\ClassWarning{ba}{#1}}
36: \def\ba@WarningNoLine#1{\ClassWarningNoLine{ba}{#1}}
37: \def\ba@Info#1{\typeout{#1}\ClassInfo{ba}{#1}}
38: \newif\ifba@debugopt
39: \DeclareOption{debug}{\ba@debugopttrue}
40: \DeclareOption{nodebug}{\ba@debugopttrue}
41: \newif\ifba@bookopt
42: \DeclareOption{book}{\ba@Info{book is base class}\ba@bookopttrue}
43: \DeclareOption{nobook}{\ba@Info{article is base class}\ba@bookoptfalse}
44: \newif\ifba@bibopt
45: \DeclareOption{bib}{\ba@bibopttrue}
46: \DeclareOption{nobib}{\ba@biboptfalse}
47: \DeclareRobustCommand\em
48:         {\@nomath\em \ifdim \fontdimen\@ne\font >\z@
49:                        \upshape \else \slshape \fi}
50: \newif\ifba@fancyopt
51: \DeclareOption{fancy}{\ba@fancyopttrue}
52: \DeclareOption{nofancy}{\ba@fancyoptfalse}
53: \newif\ifba@cropopt
54: \DeclareOption{crop}{\ba@cropopttrue}
55: \DeclareOption{nocrop}{\ba@cropoptfalse}
56: \newif\ifba@pdftex
57: \ifx\pdfoutput\ba@undefined
58:   \relax
59: \else
60:   \ba@pdftextrue
61: \fi
62: \def\ba@pointsize{10pt}
63: \DeclareOption{10pt}{\relax}
64: \DeclareOption{11pt}{\def\ba@pointsize{11pt}}
65: \DeclareOption{12pt}{\def\ba@pointsize{12pt}}
66: \let\efinalopt=\ba@undefined
67: \DeclareOption{efinal}{
68:   \ba@cropopttrue
69:   \ba@fancyopttrue
70:   \let\efinalopt=\relax
71: }
72: \DeclareOption{final}{
73:   \ba@cropopttrue
74:   \ba@fancyopttrue
75:   \let\efinalopt=\ba@undefined
76: }
77: \DeclareOption{default}{
78:   \ba@bookopttrue
79:   \ba@cropopttrue
80:   \let\efinalopt=\ba@undefined
81: }
82: \DeclareOption*{\ba@Warning{{\CurrentOption} is not a valid option}}
83: \ExecuteOptions{default}
84: \ProcessOptions\relax
85: \PassOptionsToClass{\ba@pointsize}{book}
86: \PassOptionsToClass{\ba@pointsize,twoside}{article}
87: \ifba@bookopt
88:   \LoadClass{book}
89: \else
90:   \LoadClass{article}
91: \fi
92: \ifx\efinalopt\ba@undefined \else
93:   \def\forcebftt{\relax}
94: \fi
95: \ifba@fancyopt
96:   \RequirePackage{fancyhdr}% no date
97: \fi
98: \pagestyle{headings}
99: \RequirePackage{calc}[1998/07/07]
100: \RequirePackage{ifthen}[1999/09/10]
101: \ifba@pdftex
102:   \ba@Warning{crop.sty not being used with pdflatex}
103:   \ba@cropoptfalse
104: \fi
105: \ifba@cropopt
106:   \RequirePackage[lettercenter]{crop}[1999/05/15]
107:   \renewcommand*\CROP@@info{\relax}
108: \fi
109: \ifba@bibopt
110:   \RequirePackage{natbib}[1999/05/28]
111:   \RequirePackage{chapterbib}[1999/04/29]
112: \fi
113: \ifba@bookopt
114: \else
115:   \newcounter{chapter}
116: \fi
117: \renewcommand{\thepart}{\arabic{part}}
118: \renewcommand{\thechapter}{\arabic{chapter}}
119: \renewcommand{\thesection}{\arabic{section}}
120: \renewcommand{\thesubsection}{\thesection.\arabic{subsection}}
121: \renewcommand{\theequation}{\arabic{equation}}
122: \renewcommand{\thefigure}{\arabic{figure}}
123: \renewcommand{\thetable}{\arabic{table}}
124: \ifba@bookopt
125: \else
126:   \newcommand{\chaptermark}[1]{\markboth{\textbf{#1}}{}}
127: \fi
128: \renewcommand{\chaptermark}[1]{\markboth{\textbf{\protect\short@title}}{}}
129: \renewcommand{\sectionmark}[1]{\markright{\protect\short@author}}
130: \renewcommand{\subsectionmark}[1]{\markright{\protect\short@author}}
131: \renewcommand{\subsubsectionmark}[1]{\markright{\protect\short@author}}
132: \ifba@fancyopt
133:   \renewcommand{\headrulewidth}{0pt}
134: \fi
135: \newcommand{\bathisheadings}[6]{%
136:   \ifba@fancyopt
137:     \thispagestyle{fancy}
138:     \ba@fancyheadings{#1}{#2}{#3}{#4}{#5}{#6}
139:   \else
140:     \thispagestyle{myheadings}
141:     \ba@myheadings{#1}{#2}{#3}{#4}{#5}{#6}
142:   \fi
143: }
144: \newcommand{\ba@headings}[6]{%
145:   \ifba@fancyopt
146:     \ba@fancyheadings{#1}{#2}{#3}{#4}{#5}{#6}
147:   \else
148:     \ba@myheadings{#1}{#2}{#3}{#4}{#5}{#6}
149:   \fi
150: }
151: \newcommand{\ba@fancyheadings}[6]{%
152:   \lhead{#1}
153:   \chead{#2}
154:   \rhead{#3}
155:   \lfoot{#4}
156:   \cfoot{#5}
157:   \rfoot{#6}
158: }
159: \newcommand{\ba@myheadings}[6]{%
160:   \renewcommand{\ps@myheadings}{%
161:     \renewcommand{\@oddhead}{{#1\hfil#2\hfil#3}}
162:     \renewcommand{\@evenhead}{{#3\hfil#2\hfil#2}}
163:     \renewcommand{\@oddfoot}{{#4\hfil#5\hfil#6}}%
164:     \renewcommand{\@evenfoot}{{#6\hfil#5\hfil#4}}%
165:   }
166: }
167: %\def\ba{Bayesian Analysis}
168: \def\tba{{\ba}}
169: \newcommand{\basetissue}[4]{%
170:   \def\ba@volume{#1}
171:   \def\ba@number{#2}
172:   \def\ba@month{#3}
173:   \def\ba@year{#4}
174: }
175: %CPR% \basetissue{1}{1}{March}{2003}
176: \basetissue{1}{1}{April}{2008} %CPR%
177: \def\contentsname{Contents}
178: \renewcommand{\tableofcontents}[1][]{%
179:   \clearpage
180:   \bathisheadings%
181:     {\normalfont\Large Volume \ba@volume}
182:     {\normalfont\Large Number \ba@number}
183:     {\normalfont\Large\ba@year}
184:     {}
185:     {}
186:     {}
187:     {}
188:   \begingroup
189:     \parskip 0pt
190:     {\parindent 0pt \centering \normalfont
191:      \Huge\scshape Technical Report%CPR% Bayesian Analysis
192:      \vskip \baselineskip
193:     }
194:   {\parskip 2pt \@starttoc{toc}}%
195:   \endgroup
196:   \clearpage
197:   \thispagestyle{empty}
198:   #1
199:   \pagenumbering{arabic}
200: }
201: \def\land{%                  % \begin{tabular}
202:   \end{tabular}%
203:   \hskip 1em \@plus.17fil%
204:   \begin{tabular}[t]{@{}l@{}}}%   % \end{tabular}
205: \def\cand{%                  % \begin{tabular}
206:   \end{tabular}%
207:   \hskip 1em \@plus.17fil%
208:   \begin{tabular}[t]{@{}c@{}}}%   % \end{tabular}
209: \def\rand{%                  % \begin{tabular}
210:   \end{tabular}%
211:   \hskip 1em \@plus.17fil%
212:   \begin{tabular}[t]{@{}r@{}}}%   % \end{tabular}
213: \setcounter{tocdepth}{0}
214: \renewcommand*\l@part[2]{%
215:   \ifnum \c@tocdepth >-2\relax
216:     \addpenalty{-\@highpenalty}%
217:     \addvspace{1em \@plus\p@}%
218:     \begingroup
219:       \parindent \z@ \rightskip \@pnumwidth
220:       \parfillskip -\@pnumwidth
221:       {\leavevmode
222:        {\large \bfseries #1}\hfil \hb@xt@\@pnumwidth{\hss #2}}\par
223:        \nobreak
224:          \global\@nobreaktrue
225:          \everypar{\global\@nobreakfalse\everypar{}}%
226:     \endgroup
227:   \fi
228: }
229: \ifba@bookopt\else
230:   \newcommand{\l@chapter}{\relax}
231: \fi
232: \renewcommand*\l@chapter[2]{%
233:   \ifnum \c@tocdepth >\m@ne
234:     \addpenalty{-\@highpenalty}%
235:     \setlength\@tempdima{1.5em}%
236:     \begingroup
237:       \parindent \z@ \rightskip \@pnumwidth
238:       \parfillskip -\@pnumwidth
239:       \leavevmode
240:       %\bfseries
241:       \advance\leftskip\@tempdima
242:       \hskip -\leftskip
243:       #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par
244:       \penalty\@highpenalty
245:     \endgroup
246:   \fi}
247: \newif\ifanyinserts
248: \def\inserttag{notag}
249: \def\ba@tagfilename{\jobname.tag}
250: \newwrite\ba@tagfile
251: \immediate\openout\ba@tagfile\ba@tagfilename
252: \newcommand{\inserttype}[2][notag]{%
253:   % this helps to force the correct "fancy" page header and footer
254:   % if the previous chapter was only a page long
255:   \clearpage
256:   \ifthenelse{\equal{#1}{notag}}{%
257:     \def\inserttag{notag\thechapter}%
258:   }{
259:     \def\inserttag{#1}%
260:   }
261:   % internals for the insert type
262:     \def\@inserttype{article}%
263:     \let\@maketitle\art@maketitle
264:     \babibsection
265:   \ifthenelse{\equal{#2}{column}}{%
266:     \def\@inserttype{column}%
267:     \let\@maketitle\col@maketitle
268:     \babibsection
269:   }{}
270:   \ifthenelse{\equal{#2}{note}}{%
271:     \def\@inserttype{note}%
272:     \let\@maketitle\not@maketitle
273:     \babibsection[star]
274:   }{}
275:   \ifthenelse{\equal{#2}{comment}}{%
276:     \def\@inserttype{comment}%
277:     \let\@maketitle\com@maketitle
278:     \babibsection[star]
279:   }{}%
280: }
281: \newcommand{\art@maketitle}{%
282:   \let\and\cand
283:   {\parindent 0pt \centering \normalfont\sffamily
284:    \LARGE\bfseries\ba@placetitle\par\nobreak
285:    \vskip 16pt
286:   }
287:   {\parindent 0pt \centering \normalfont%
288:    \begin{tabular}[t]{c}
289:    \@author
290:    \end{tabular}
291:    \par\nobreak%
292:   }%
293: }
294: \newcommand{\columnfig}[1]{\def\@columnfig{#1}}
295: \def\emptycolumnfig{}
296: \let\@columnfig\emptycolumnfig
297: \newbox\columnpicbox
298: \newcount\columnpichght
299: \newcommand{\col@maketitle}{%
300:   \let\and\cand
301:   \ifx\@columnfig\emptycolumnfig
302:     \art@maketitle
303:   \else
304:     \setbox\columnpicbox=\hbox{\epsfig{file=\@columnfig}}
305:     \columnpichght=\ht\columnpicbox
306:     {\parindent 0pt \centering \normalfont\sffamily
307:      \LARGE\bfseries \ba@placetitle\par\nobreak
308:      \vskip 16pt
309:     }
310:     {\parindent 0pt
311:      \normalfont
312:      \begin{minipage}[b][\the\columnpichght sp][c]{\textwidth/2-1em}
313:      \raggedleft\@author
314:      \end{minipage}
315:      \begin{minipage}[b][\the\columnpichght sp][c]{\textwidth/2-1em}
316:      \unhbox\columnpicbox
317:      \end{minipage}
318:      \par\nobreak
319:     }
320:     % reset column figure macro to be empty
321:     \let\@columnfig\emptycolumnfig
322:   \fi
323:   \vskip -6pt
324: }
325: \newcommand{\not@maketitle}{%
326:   \let\and\rand
327:   \noindent
328:   {\raggedleft\normalfont\sffamily
329:    \Large\bfseries \ba@placetitle\par\nobreak
330:    \vskip 10pt
331:   }
332:   {\parindent 0pt \raggedleft\normalfont
333:    \begin{tabular}[t]{@{}r@{}}
334:    \@author
335:    \end{tabular}
336:    \par\nobreak
337:    \vskip -6pt
338:   }
339: }
340: \let\com@maketitle=\not@maketitle
341: \newcommand{\def@maketitle}{%
342:   {\parindent 0pt \centering \normalfont\sffamily
343:    \LARGE\bfseries \ba@placetitle\par\nobreak
344:    \vskip 16pt
345:   }
346:   {\parindent 0pt \centering \normalfont
347:    \begin{tabular}[t]{c}
348:    \@author
349:    \end{tabular}
350:    \par\nobreak
351:    \vskip -6pt
352:   }
353: }
354: \let\@maketitle\def@maketitle
355: \renewcommand{\author}[2]{%
356:   \def\short@author{#1}%
357:   \def\@author{#2}%
358: }
359: \renewcommand{\title}[2][empty]{%
360:   \gdef\@title{#2}%
361:   \ifthenelse{\equal{#1}{empty}}{
362:     \gdef\short@title{#2}
363:   }{
364:     \gdef\short@title{#1}
365:   }%
366: }
367: \def\ba@placetitle{%
368:    \ifx\hypertarget\@undefined%
369:     \@title%
370:    \else%
371:     \hypertarget{\inserttag}{\@title}%
372:    \fi%
373: }
374: \renewcommand{\part}[1]{%
375:   \clearpage
376:   \refstepcounter{part}
377:   \ifnum \thepart>1
378:     \addtocontents{toc}{\protect\addvspace{1.5\baselineskip}}%
379:   \fi
380:   \addcontentsline{toc}{part}{\bfseries #1}
381:   \addtocontents{toc}{\protect\addvspace{\baselineskip}}%
382: }
383: %\renewcommand\dotfill{\leaders\hbox{$\m@th \mkern \@dotsep
384: %    mu.\mkern \@dotsep mu$}\hfill}
385: % redefine chapter toc behavior from book.cls replacing \hfil with \dotfill
386: %\renewcommand*\l@chapter[2]{% from book.cls with \hfil->\dotfill
387: %  \ifnum \c@tocdepth >\m@ne
388: %    \addpenalty{-\@highpenalty}%
389: %    \vskip 1.0em \@plus\p@
390: %    \setlength\@tempdima{1.5em}%
391: %    \begingroup
392: %      \parindent \z@ \rightskip \@pnumwidth
393: %      \parfillskip -\@pnumwidth
394: %      \leavevmode \bfseries
395: %      \advance\leftskip\@tempdima
396: %      \hskip -\leftskip
397: %      #1\nobreak\dotfill \nobreak\hb@xt@\@pnumwidth{\hss #2}\par
398: %      \penalty\@highpenalty
399: %    \endgroup
400: %  \fi}
401: \renewcommand{\maketitle}{%
402:   % save info for the pages in the previous and this insert
403:   \ba@setpp
404:   % clear page and get beginning page number for this insert
405:   \clearpage\ba@setppfirst
406:   % set title page header style
407:   \bathisheadings%
408:     {}%CPR% {\small Bayesian Analysis (\ba@year)\newline%
409:      %\textbf{\ba@volume}, Number \ba@number \ba@getpp}
410:     {}
411:     {}
412:     {\small\copyright{} \ba@year{} International Society for Bayesian Analysis}%
413:     {}
414:     {\inserttag}
415:   % new chapter number and reset the section counter
416:   \refstepcounter{chapter}%
417:   \setcounter{section}{0}
418:   \setcounter{equation}{0}
419:   \setcounter{figure}{0}
420:   \setcounter{table}{0}
421:   % make the title page
422:   \vskip\baselineskip\par
423:   \@maketitle%
424:   % set the title mark
425:   \chaptermark{\short@title}%
426:   % set the author mark
427:   \sectionmark{\short@author}%
428:   % write out a list of chapterid and insert tag for assignment checks
429:   \immediate\write\ba@tagfile{insert \thechapter --\inserttag: \short@title}
430:   % send a message to the terminal
431:   \ba@Info{New \@inserttype: (chapter \thechapter: dest \inserttag)}%
432:   % add an entry to the table of contents file
433:   \addcontentsline{toc}{chapter}{\short@title~\protect\dotfill~\sc{\short@author\ } \ }%
434: %\addcontentsline{toc}{chapter}{\short@title \dotfill}%
435:   % now at least one insert exists
436:   \anyinsertstrue%
437: }
438: \def\ba@baseppfile{\jobname.pp}
439: \newwrite\ba@ppfile
440: \newcommand{\ba@getpp}{%
441:   \IfFileExists{\ba@baseppfile\thechapter}{%
442:     \input{\ba@baseppfile\thechapter}%
443:   }{}%
444: }
445: \newcounter{ba@thispage}
446: \newcommand{\ba@setpp}{%
447:   \ifanyinserts
448:     \setcounter{ba@thispage}{\thepage}
449:     \ifnum \theba@thispage>1 \addtocounter{ba@thispage}{-1} \fi
450:     \immediate\openout\ba@ppfile\ba@baseppfile\thechapter
451:     \ifnum \theba@thispage>\ba@ppfirst
452:       \immediate\write\ba@ppfile{, pp. \ba@ppfirst--\theba@thispage}
453:     \else
454:       \immediate\write\ba@ppfile{, p. \theba@thispage}
455:     \fi
456:     \immediate\closeout\ba@ppfile
457:   \fi
458: }
459: \newcommand{\ba@setppfirst}{%
460:   \edef\ba@ppfirst{\thepage}
461: }
462: \def\ba@ppfirst{0}
463: \AtEndDocument{
464:   \ba@setpp
465: }
466: \renewcommand{\section}{\@startsection%
467:   {section}% name
468:   {1}% level
469:   {0pt}% indent
470:   {-\baselineskip}% beforeskip
471:   {0.25\baselineskip}% afterskip
472:   {\normalfont\Large\sffamily\bfseries}% style
473: }
474: \let\ba@section=\section
475: \renewcommand{\subsection}{\@startsection%
476:   {subsection}% name
477:   {2}% level
478:   {0pt}% indent
479:   {-\baselineskip}% beforeskip
480:   {0.25\baselineskip}% afterskip
481:   {\normalfont\large\sffamily\bfseries}% style
482: }
483: \let\ba@subsection=\subsection
484: \renewcommand{\subsubsection}{\@startsection%
485:   {subsubsection}% name
486:   {3}% level
487:   {0pt}% indent
488:   {-\baselineskip}% beforeskip
489:   {0.25\baselineskip}% afterskip
490:   {\normalfont\normalsize\sffamily\bfseries}% style
491: }
492: \let\ba@subsubsection=\subsubsection
493: \renewcommand{\paragraph}{\@startsection%
494:   {paragraph}% name
495:   {4}% level
496:   {0pt}% indent
497:   {-\baselineskip}% beforeskip
498:   {-0.25\baselineskip}% afterskip
499:   {\normalfont\normalsize\sffamily\bfseries}% style
500: }
501: \let\ba@paragraph=\paragraph
502: \newcommand{\keywords}[1]{%
503:   \par%
504:   \noindent%
505:   {\small {\sffamily\bfseries Keywords:} #1}%
506: }
507: \newenvironment{summary}{%
508:   \small%
509:   \noindent%
510:   {\sffamily\bfseries Summary.}%
511: }{\par}
512: \ifba@bookopt
513:   \newenvironment{abstract}{\relax}{\relax}
514: \fi
515: \def\abstractname{Abstract}%
516: \renewenvironment{abstract}{%
517:   \small%
518:   \quotation%
519:   \parskip 0.5\baselineskip%
520:   {\noindent\sffamily\bfseries\abstractname.}
521: }
522: { \endquotation%
523:   \par%
524: }
525: \newenvironment{aboutauthor}{%
526:   \vskip 0.5\baselineskip\small%
527:   {\noindent \normalfont\sffamily\bfseries About the Author}\par%
528:   \begingroup\parindent 0pt\parskip 0.5\baselineskip%
529: }
530: {\endgroup}
531: \newenvironment{aboutauthors}{%
532:   \vskip 0.5\baselineskip\small%
533:   {\noindent\normalfont\sffamily\bfseries About the Authors}\par%
534:   \begingroup\parindent 0pt\parskip 0.5\baselineskip%
535: }
536: {\endgroup}
537: \AtBeginDocument{
538:   \let\ba@caption\caption
539:   \def\caption{%
540:     \ifthenelse{\equal{\@captype}{figure}}{\vskip -1.5\baselineskip}{\relax}%
541:     \ba@caption
542:   }
543: }
544: \ifba@bibopt
545:   \newdimen\bibindent
546:   \setlength\bibindent{1.5em}
547:   \def\bibname{References}
548:   \newcommand\babibsection[1][]{%
549:     \ifthenelse{\equal{#1}{}}{%
550:       \def\bibsection{\section{\bibname}}%
551:     }{%
552:       \def\bibsection{\section*{\bibname}}%
553:     }
554:   }
555: \fi
556: \def\defaultoffset{1in}
557: \newlength{\ba@pgheight}
558: \newlength{\ba@pgwidth}
559: \setlength{\ba@pgheight}{9.25in}
560: \setlength{\ba@pgwidth}{7.25in}
561: \def\ba@setpaperdim{
562:   \setlength{\paperheight}{\ba@pgheight}
563:   \setlength{\paperwidth}{\ba@pgwidth}
564: }
565: \newcommand{\bamakecrop}[1][baempty]{%
566:   \ifthenelse{\equal{#1}{baempty}}{%
567:     \ifx\efinalopt\ba@undefined \crop[cam]%
568:     \else \crop[frame]%
569:     \fi%
570:   }{%
571:     \crop[#1]%
572:   }
573: }
574: \ifba@cropopt
575:   \ba@setpaperdim
576: \else
577:   \newcommand{\crop}[1][empty]{\ba@Info{crop.sty not loaded}}
578: \fi
579: \newlength{\ba@voffset}\setlength{\ba@voffset}{0.25in}
580: \newlength{\ba@hoffset}\setlength{\ba@hoffset}{\defaultoffset}
581: \ifba@pdftex
582:   \setlength{\paperheight}{11in}
583:   \setlength{\paperwidth}{8.5in}
584:   \setlength{\voffset}{0.5\paperheight-0.5\ba@pgheight}
585:   \setlength{\hoffset}{0.5\paperwidth-0.5\ba@pgwidth}
586: \fi
587: \setlength{\oddsidemargin}{0pt}
588: \setlength{\evensidemargin}{0pt}
589: \newlength{\ba@topmargin}\setlength{\ba@topmargin}{0pt}
590: \ifba@pdftex
591:   \setlength{\topmargin}{\ba@topmargin-\defaultoffset}
592: \else
593:   \setlength{\topmargin}{\ba@topmargin-\defaultoffset+\ba@voffset}
594: \fi
595: \setlength{\headheight}{44pt}
596: \setlength{\headsep}{14pt}
597: \setlength{\marginparsep}{0pt}
598: \setlength{\marginparwidth}{0pt}
599: \setlength{\footskip}{30pt}
600: \setlength{\textheight}%
601:   {\ba@pgheight-2\ba@voffset-\ba@topmargin-\headheight-\headsep-\footskip}
602: \setlength{\textwidth}%
603:  {\ba@pgwidth-2\ba@hoffset-\oddsidemargin-\marginparsep-\marginparwidth}
604: \ifba@cropopt
605:   \relax
606: \else
607:   \ifba@pdftex
608:     \relax
609:   \else
610:     \setlength{\paperheight}{11in}
611:     \setlength{\paperwidth}{8.5in}
612:     \setlength{\topmargin}{0pt}
613:     \setlength{\voffset}{0pt}
614:     \setlength{\hoffset}{0.5\paperwidth-0.5\textwidth-1in}
615:   \fi
616: \fi
617: \newlength{\banoheadlength}
618: \setlength{\banoheadlength}{-\headheight}
619: \setlength{\parskip}{0.5\baselineskip}
620: \AtBeginDocument{%
621:   \IfFileExists{editor.sty}{%
622:     \ba@Info{automatically inputting editor.sty}\input{editor.sty}%
623:   }{}%
624:   \IfFileExists{ba.cfg}{%
625:     \ba@Info{automatically inputting ba.cfg}\input{ba.cfg}%
626:   }{}%
627: }
628: \endinput
629: %%
630: %% End of file `ba.cls'.