vlLgrFilename.h
Go to the documentation of this file.
00001 /******************************************************************************
00002 ** Copyright (c) 1992-2010 VT MAK
00003 ** All rights reserved.
00004 ******************************************************************************/
00008 
00009 #ifndef vlLgrFilename_H_
00010 #define vlLgrFilename_H_
00011 
00012 #include "lgrUtil.h"
00013 #include <vlutil/vlString.h>
00014 
00015 namespace MAKLogger
00016 {
00017 
00021    class DT_DLL_LGRUTIL DtLgrFilename : public DtString
00022    {
00023    public:
00025       DtLgrFilename();
00026 
00028       DtLgrFilename(const char* str);
00029 
00031       virtual ~DtLgrFilename();
00032 
00034       DtLgrFilename(const DtLgrFilename& orig);
00035 
00037       DtLgrFilename& operator=(const DtLgrFilename& orig);
00038       DtLgrFilename& operator=(const DtString& orig);
00039       DtLgrFilename& operator=(const char* orig);
00040 
00043       virtual bool absolute() const;
00044       virtual bool relative() const;
00045 
00050       virtual void append(DtLgrFilename const& filename);
00051 
00057       virtual void prefix(DtLgrFilename const& pathName);
00058 
00062       virtual DtString extension() const;
00063 
00067       virtual void setExtension(const DtString& extension);
00068 
00070       virtual void stripFilename();
00071 
00073       virtual void stripPath();
00074 
00076       virtual bool isWritable() const;
00077 
00079       virtual bool isReadable() const;
00080 
00083       virtual unsigned long fileLength() const;
00084 
00086       virtual bool exists() const;
00087 
00088    public:
00089 
00091       static const DtLgrFilename& nullFilename();
00092 
00094       static DtLgrFilename stripFilename(const DtLgrFilename& orig);
00095 
00097       static DtLgrFilename stripPath(const DtLgrFilename& orig);
00098 
00103       static DtLgrFilename combine(const DtLgrFilename& path, const DtLgrFilename& filename);
00104 
00106       static char separator();
00107 
00108 
00109    protected:
00114       void replaceSlashes();
00115 
00116    protected:
00117       static const char theSeparator;
00118    };
00119 
00120 }
00121 
00122 #endif

Document ID: Generated on Tue Oct 11 19:41:03 EDT 2011 from SVN revision 107422
Copyright © 2005-2011 VT MÄK Inc. All Rights Reserved (www.mak.com)