%%
%% This is file `auxhook.sty',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
%% auxhook.dtx  (with options: `package')
%% 
%% This is a generated file.
%% 
%% Project: auxhook
%% Version: 2011/03/04 v1.3
%% 
%% Copyright (C) 2006, 2007, 2009, 2011 by
%%    Heiko Oberdiek <heiko.oberdiek at googlemail.com>
%% 
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either
%% version 1.3c of this license or (at your option) any later
%% version. This version of this license is in
%%    http://www.latex-project.org/lppl/lppl-1-3c.txt
%% and the latest version of this license is in
%%    http://www.latex-project.org/lppl.txt
%% and version 1.3 or later is part of all distributions of
%% LaTeX version 2005/12/01 or later.
%% 
%% This work has the LPPL maintenance status "maintained".
%% 
%% This Current Maintainer of this work is Heiko Oberdiek.
%% 
%% This work consists of the main source file auxhook.dtx
%% and the derived files
%%    auxhook.sty, auxhook.pdf, auxhook.ins, auxhook.drv.
%% 
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{auxhook}%
  [2011/03/04 v1.3 Hooks for auxiliary files (HO)]%
\providecommand*{\@beginmainauxhook}{}
\providecommand*{\@beginpartauxhook}{}
\ifx\AtBeginDocument\@firstofone
  \global\let\@beginmainauxhook\relax
\else
  \g@addto@macro{\@beginmainauxhook}{%
    \global\let\@beginmainauxhook\relax
  }%
\fi
\newcommand{\AddLineBeginMainAux}[1]{%
  \ifx\@beginmainauxhook\relax
    \if@filesw
      \PackageInfo{auxhook}{%
        \@backslashchar AddLineBeginMainAux comes a little late,%
        \MessageBreak
        because the main .aux file is already opened%
      }%
      \immediate\write\@mainaux{#1}%
    \fi
  \else
    \g@addto@macro\@beginmainauxhook{%
      \immediate\write\@mainaux{#1}%
    }%
  \fi
}
\newcommand{\AddLineBeginPartAux}[1]{%
  \g@addto@macro\@beginpartauxhook{%
    \immediate\write\@partaux{#1}%
  }%
}
\newcommand{\AddLineBeginAux}[1]{%
  \AddLineBeginMainAux{#1}%
  \AddLineBeginPartAux{#1}%
}
\begingroup
  \@ifundefined{beamer@origdocument}{%
    \def\auxhook@document{\document}%
  }{%
    \def\auxhook@document{\beamer@origdocument}%
  }%
  \long\def\y#1\immediate\write\@mainaux#2#3\auxhook@nil{%
    \toks@{%
      #1\immediate\write\@mainaux{#2}%
      \@beginmainauxhook
      #3%
    }%
    \expandafter\xdef\auxhook@document{\the\toks@}%
    \endgroup
  }%
  \long\def\x#1\immediate\write\@mainaux#2#3\auxhook@nil{%
    \toks@{#3}%
    \edef\x{\the\toks@}%
    \ifx\x\@empty
      \PackageWarningNoLine{auxhook}{%
        Cannot patch \expandafter\string\auxhook@document,%
        \MessageBreak
        using \string\AtBeginDocument\space instead%
      }%
      \endgroup
      \AtBeginDocument{%
        \if@filesw
          \@beginmainauxhook
        \fi
      }%
    \else
      \expandafter\expandafter\expandafter\y\auxhook@document
          \auxhook@nil
    \fi
  }%
\expandafter\expandafter\expandafter\x\auxhook@document
    \immediate\write\@mainaux{}\auxhook@nil
\begingroup
  \long\def\y#1\immediate\write\@partaux#2#3\auxhook@nil#4{%
    \endgroup
    \def#4##1 {%
      #1\immediate\write\@partaux{#2}%
      \@beginpartauxhook
      #3%
    }%
  }%
  \long\def\x#1\immediate\write\@partaux#2#3\auxhook@nil#4{%
    \toks@{#3}%
    \edef\x{\the\toks@}%
    \ifx\x\@empty
      \PackageWarningNoLine{auxhook}{%
        Cannot patch \string#4,\MessageBreak
        patch dropped%
      }%
      \endgroup
    \else
      \expandafter\y#4{##1} \auxhook@nil#4%
    \fi
  }%
\@ifundefined{ReFiCh@org@include}{%
  \expandafter\x\@include{#1} %
  \immediate\write\@partaux{}\auxhook@nil\@include
}{%
  \expandafter\x\ReFiCh@org@include{#1} %
  \immediate\write\@partaux{}\auxhook@nil\ReFiCh@org@include
}%
\endinput
%%
%% End of file `auxhook.sty'.
