% $Id$
%
% Earth System Modeling Framework
% Copyright (c) 2002-2023, University Corporation for Atmospheric Research, 
% Massachusetts Institute of Technology, Geophysical Fluid Dynamics 
% Laboratory, University of Michigan, National Centers for Environmental 
% Prediction, Los Alamos National Laboratory, Argonne National Laboratory, 
% NASA Goddard Space Flight Center.
% Licensed under the University of Illinois-NCSA License.

\begin{enumerate}

\item {\bf Line, file and method are only available when using the C 
preprocessor}
Message writing methods are expanded using the ESMF macro ESMF\_CONTEXT 
that adds the predefined symbolic constants \_\_LINE\_\_ and \_\_FILE\_\_ (or 
the ESMF constant ESMF\_FILENAME if defined) and the ESMF constant ESMF\_METHOD 
to the argument list.  Using these constants, we can associate a file name, 
line number and method name with the message.  If the CPP preprocessor is not 
used, this expansion will not be done and hence the ESMF macro ESMF\_CONTEXT 
can not be used, leaving the file name, line number and method out of the Log 
text.

\item{\bf Get and set methods are partially implemented.}
Currently, the {\tt ESMF\_LogGet()} and {\tt ESMF\_LogSet()} methods are 
partially implemented.   

\item{\bf Log only appends entries.}
All writing to the Log is appended rather than overwriting the Log.  Future 
enhancements include the option to either append to an existing Log or 
overwrite the existing Log.

\item{\bf Avoiding conflicts with the default Log.}
\begin{sloppypar}
The private methods {\tt ESMF\_LogInitialize()} and {\tt ESMF\_LogFinalize()} 
are called during {\tt ESMF\_Initialize()} and {\tt ESMF\_Finalize()} 
respectively, so they do not need to be called if the default Log is used. 
If a new Log is required, {\tt ESMF\_LogOpen()} is used with a new Log object 
passed in so that there are no conflicts with the default Log.
\end{sloppypar}

\item{\bf ESMF\_LOGKIND\_SINGLE does not work properly.}
When the {\tt ESMF\_LogKind\_Flag} is set to {\tt ESMF\_LOGKIND\_SINGLE}, different system may behave
differently.  The log messages from some processors may be lost or overwritten
by other processors.  Users are advised not to use this mode.  The MPI-based
I/O will be implemented to fix the problem in the future release. 


\end{enumerate}
