80 lines
2.2 KiB
TeX
80 lines
2.2 KiB
TeX
% ALGORITHM STYLE -- Released 8 April 1996
|
|
% for LaTeX-2e
|
|
% Copyright -- 1994 Peter Williams
|
|
% E-mail Peter.Williams@dsto.defence.gov.au
|
|
\NeedsTeXFormat{LaTeX2e}
|
|
\ProvidesPackage{algorithm}
|
|
\typeout{Document Style `algorithm' - floating environment}
|
|
|
|
\RequirePackage{float}
|
|
\RequirePackage{ifthen}
|
|
\newcommand{\ALG@within}{nothing}
|
|
\newboolean{ALG@within}
|
|
\setboolean{ALG@within}{false}
|
|
\newcommand{\ALG@floatstyle}{ruled}
|
|
\newcommand{\ALG@name}{Algorithm}
|
|
\newcommand{\listalgorithmname}{List of \ALG@name s}
|
|
|
|
% Declare Options
|
|
% first appearance
|
|
\DeclareOption{plain}{
|
|
\renewcommand{\ALG@floatstyle}{plain}
|
|
}
|
|
\DeclareOption{ruled}{
|
|
\renewcommand{\ALG@floatstyle}{ruled}
|
|
}
|
|
\DeclareOption{boxed}{
|
|
\renewcommand{\ALG@floatstyle}{boxed}
|
|
}
|
|
% then numbering convention
|
|
\DeclareOption{part}{
|
|
\renewcommand{\ALG@within}{part}
|
|
\setboolean{ALG@within}{true}
|
|
}
|
|
\DeclareOption{chapter}{
|
|
\renewcommand{\ALG@within}{chapter}
|
|
\setboolean{ALG@within}{true}
|
|
}
|
|
\DeclareOption{section}{
|
|
\renewcommand{\ALG@within}{section}
|
|
\setboolean{ALG@within}{true}
|
|
}
|
|
\DeclareOption{subsection}{
|
|
\renewcommand{\ALG@within}{subsection}
|
|
\setboolean{ALG@within}{true}
|
|
}
|
|
\DeclareOption{subsubsection}{
|
|
\renewcommand{\ALG@within}{subsubsection}
|
|
\setboolean{ALG@within}{true}
|
|
}
|
|
\DeclareOption{nothing}{
|
|
\renewcommand{\ALG@within}{nothing}
|
|
\setboolean{ALG@within}{true}
|
|
}
|
|
\DeclareOption*{\edef\ALG@name{\CurrentOption}}
|
|
|
|
% ALGORITHM
|
|
%
|
|
\ProcessOptions
|
|
\floatstyle{\ALG@floatstyle}
|
|
\ifthenelse{\boolean{ALG@within}}{
|
|
\ifthenelse{\equal{\ALG@within}{part}}
|
|
{\newfloat{algorithm}{htbp}{loa}[part]}{}
|
|
\ifthenelse{\equal{\ALG@within}{chapter}}
|
|
{\newfloat{algorithm}{htbp}{loa}[chapter]}{}
|
|
\ifthenelse{\equal{\ALG@within}{section}}
|
|
{\newfloat{algorithm}{htbp}{loa}[section]}{}
|
|
\ifthenelse{\equal{\ALG@within}{subsection}}
|
|
{\newfloat{algorithm}{htbp}{loa}[subsection]}{}
|
|
\ifthenelse{\equal{\ALG@within}{subsubsection}}
|
|
{\newfloat{algorithm}{htbp}{loa}[subsubsection]}{}
|
|
\ifthenelse{\equal{\ALG@within}{nothing}}
|
|
{\newfloat{algorithm}{htbp}{loa}}{}
|
|
}{
|
|
\newfloat{algorithm}{htbp}{loa}
|
|
}
|
|
\floatname{algorithm}{\ALG@name}
|
|
|
|
\newcommand{\listofalgorithms}{\listof{algorithm}{\listalgorithmname}}
|
|
|