Main Page Modules Namespace List Class Hierarchy Alphabetical List Compound List File List Namespace Members Compound Members File Members Related Pages

# deLogDestiny.hpp

Go to the documentation of this file.

    00001 ///////////////////////////////////////////////////////////////////////////////
    00002 /// @file deLogDestiny.hpp
    00003 ///
    00004 /// @brief Error and Logging Class - Destiny Version I
    00005 ///
    00006 /// @author Hootie
    00007 ///
    00008 /// This file is the intellectual property of Novus Delta, LLC.. Usage of the
    00009 /// contents of this file is subject to the Destiny3D Member License which
    00010 /// can be found at http://www.destiny3d.com.  Any other usage is prohibited.
    00011 ///
    00012 /// This file is distributed "AS IS" without warranty of any kind.  Novus
    00013 /// Delta, LLC. does not guarantee the fitness of the contents of this file
    00014 /// for any particular purpose.
    00015 ///
    00016 /// Copyright (C) 2001-2003 Novus Delta, LLC. All Rights Reserved.
    00017 ///
    00018 /// <hr>
    00019 ///                                 Change History
    00020 /// <hr>
    00021 ///
    00022 /// @date Dec 2001
    00023 /// @author Hootie
    00024 /// @remarks Creation
    00025 ///
    00026 ///////////////////////////////////////////////////////////////////////////////
    00027
    00028 #ifndef DELOGDESTINY_HPP
    00029 #define DELOGDESTINY_HPP
    00030
    00031
    00032
    00033 //=================================================================================
    00034 // Includes
    00035 //=================================================================================
    00036
    00037 #include "deLog.hpp"
    00038 #include "deString.hpp"
    00039 #include "deShared.hpp"
    00040 #include "deArray.hpp"
    00041
    00042
    00043
    00044 //=================================================================================
    00045 // Internal Data Structures
    00046 //=================================================================================
    00047
    00048 typedef struct FileInfo
    00049 {
    00050    unsigned int ThreadID;
    00051    deWinFile *ErrorFile;
    00052    deWinFile *LogFile;
    00053 } FileInfo;
    00054
    00055
    00056
    00057 //=================================================================================
    00058 // deLogDestiny Class
    00059 //
    00060 // Error and Logging Class - Destiny Version I
    00061 //=================================================================================
    00062
    00063 class deLogDestiny : public IdeLog
    00064 {
    00065 public:
    00066    deLogDestiny(char *LogName);
    00067    ~deLogDestiny();
    00068
    00069    deBoolean GetCreationResult(void) { return CreationResult; }
    00070
    00071    void Error(deErrorLevelType ErrorLevel, unsigned int ErrorCode);
    00072    void Error(deErrorLevelType ErrorLevel, char *Format, ...);
    00073
    00074    void ErrorStart(deErrorLevelType ErrorLevel);
    00075    void ErrorAddLine(unsigned int ErrorCode);
    00076    void ErrorAddLine(char *Format, ...);
    00077    void ErrorEnd(deErrorLevelType ErrorLevel);
    00078
    00079    void Log(char *Format, ...);
    00080
    00081    void LogFunctionStart(const char *FunctionName);
    00082    void LogParamListStart();
    00083    void LogParamListEnd();
    00084    void LogFunctionEnd(const char *FunctionName);
    00085
    00086    void LogVariable(const char *VarName, char *Format, ...);
    00087
    00088 private:
    00089    deBoolean GetThreadFileInfo(FileInfo *Info);
    00090
    00091    deBoolean CreationResult;
    00092    char BaseFileName[120];
    00093    deTArray<FileInfo> LogFiles;
    00094 };
    00095
    00096
    00097
    00098
    00099 #endif  // End DELOGDESTINY_HPP
    00100
    00101