![]() |
VR-Link API Documentation for HLA 1.3
|
00001 /********************************************************************* 00002 ** Copyright (c) 1992-2010 VT MAK 00003 ** All rights reserved. 00004 *********************************************************************/ 00008 #pragma once 00009 00010 #include "vlString.h" 00011 00012 #ifdef DtUSE_UTILITIES_NAMESPACE 00013 namespace DtUSE_UTILITIES_NAMESPACE 00014 { 00015 #endif 00016 00020 class DT_DLL_VLUTIL DtFilename : public DtString 00021 { 00022 public: 00024 DtFilename(); 00025 00027 DtFilename(const char* str); 00028 00030 virtual ~DtFilename(); 00031 00033 DtFilename(const DtFilename& orig); 00034 00036 DtFilename& operator=(const DtFilename& orig); 00037 DtFilename& operator=(const DtString& orig); 00038 DtFilename& operator=(const char* orig); 00039 00042 virtual bool absolute() const; 00043 virtual bool relative() const; 00044 00049 virtual void append(DtFilename const& filename); 00050 00056 virtual void prepend(DtFilename const& pathName); 00057 00061 virtual DtString extension() const; 00062 00066 virtual void setExtension(const DtString& extension); 00067 00069 virtual void stripFilename(); 00070 00072 virtual void stripPath(); 00073 00081 virtual void stripExtension(); 00082 00084 virtual bool isWritable() const; 00085 00087 virtual bool isReadable() const; 00088 00091 virtual unsigned long fileLength() const; 00092 00094 virtual bool exists() const; 00095 00096 public: 00097 00099 static const DtFilename& nullFilename(); 00100 00102 static DtFilename stripFilename(const DtFilename& orig); 00103 00105 static DtFilename stripPath(const DtFilename& orig); 00106 00108 static DtFilename stripExtension(const DtFilename& orig); 00109 00115 static DtFilename combine(const DtFilename& path, const DtFilename& filename); 00116 00118 static char separator(); 00119 00120 00121 protected: 00126 void replaceSlashes(); 00127 00128 protected: 00129 static const char theSeparator; 00130 }; 00131 00132 #ifdef DtUSE_UTILITIES_NAMESPACE 00133 } 00134 #endif