summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHenri Herscher <henri@oreka.org>2007-02-19 19:36:46 +0000
committerHenri Herscher <henri@oreka.org>2007-02-19 19:36:46 +0000
commitb4f4029fa306b2753357c5f9c3e53968c3ba8e08 (patch)
treebffcc2dac317244fd77645465a45bde32dd8b388
parent51e937e678323ceb3079e3ecafb1e8f78e59be11 (diff)
Moved recursive mkdir function to Utils.
git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@411 09dcff7a-b715-0410-9601-b79a96267cd0
-rw-r--r--orkbasecxx/Utils.cpp20
-rw-r--r--orkbasecxx/Utils.h2
-rw-r--r--orkbasecxx/audiofile/AudioFile.cpp20
-rw-r--r--orkbasecxx/audiofile/AudioFile.h1
-rw-r--r--orkbasecxx/audiofile/LibSndFileFile.cpp2
-rw-r--r--orkbasecxx/audiofile/MediaChunkFile.cpp3
-rw-r--r--orkbasecxx/audiofile/PcmFile.cpp3
7 files changed, 26 insertions, 25 deletions
diff --git a/orkbasecxx/Utils.cpp b/orkbasecxx/Utils.cpp
index d4e7f8a..d1139ba 100644
--- a/orkbasecxx/Utils.cpp
+++ b/orkbasecxx/Utils.cpp
@@ -1,6 +1,7 @@
#include "Utils.h"
#include "ace/OS_NS_stdio.h"
#include "ace/OS_NS_arpa_inet.h"
+#include "ace/OS_NS_sys_stat.h"
//========================================================
// file related stuff
@@ -65,6 +66,25 @@ bool FileCanOpen(CStdString& path)
return false;
}
+void FileRecursiveMkdir(CStdString& path)
+{
+ int position = 0;
+ bool done = false;
+ while (!done)
+ {
+ position = path.Find('/', position+1);
+ if (position == -1)
+ {
+ done = true;
+ }
+ else
+ {
+ CStdString level = path.Left(position);
+ ACE_OS::mkdir((PCSTR)level);
+ }
+ }
+}
+
//=====================================================
// Network related stuff
diff --git a/orkbasecxx/Utils.h b/orkbasecxx/Utils.h
index 0317399..f6d1762 100644
--- a/orkbasecxx/Utils.h
+++ b/orkbasecxx/Utils.h
@@ -73,7 +73,7 @@ CStdString DLL_IMPORT_EXPORT_ORKBASE FileBaseName(CStdString& path);
CStdString DLL_IMPORT_EXPORT_ORKBASE FilePath(CStdString& path);
CStdString DLL_IMPORT_EXPORT_ORKBASE FileStripExtension(CStdString& filename);
bool DLL_IMPORT_EXPORT_ORKBASE FileCanOpen(CStdString& path);
-
+void DLL_IMPORT_EXPORT_ORKBASE FileRecursiveMkdir(CStdString& path);
//=====================================================
diff --git a/orkbasecxx/audiofile/AudioFile.cpp b/orkbasecxx/audiofile/AudioFile.cpp
index 7db3ceb..0f12958 100644
--- a/orkbasecxx/audiofile/AudioFile.cpp
+++ b/orkbasecxx/audiofile/AudioFile.cpp
@@ -19,26 +19,6 @@ void AudioFile::Open(fileOpenModeEnum mode, bool stereo , int sampleRate)
Open(m_filename, mode, stereo, sampleRate);
}
-
-void AudioFile::RecursiveMkdir(CStdString& path)
-{
- int position = 0;
- bool done = false;
- while (!done)
- {
- position = path.Find('/', position+1);
- if (position == -1)
- {
- done = true;
- }
- else
- {
- CStdString level = path.Left(position);
- ACE_OS::mkdir((PCSTR)level);
- }
- }
-}
-
void AudioFile::MoveOrig()
{
CStdString newName = m_filename + ".orig";
diff --git a/orkbasecxx/audiofile/AudioFile.h b/orkbasecxx/audiofile/AudioFile.h
index ef43373..cc37e4c 100644
--- a/orkbasecxx/audiofile/AudioFile.h
+++ b/orkbasecxx/audiofile/AudioFile.h
@@ -58,7 +58,6 @@ public:
virtual CStdString GetExtension() = 0;
virtual int GetSampleRate();
- static void RecursiveMkdir(CStdString& path);
protected:
CStdString m_filename;
fileOpenModeEnum m_mode;
diff --git a/orkbasecxx/audiofile/LibSndFileFile.cpp b/orkbasecxx/audiofile/LibSndFileFile.cpp
index 0eba13a..3da3b77 100644
--- a/orkbasecxx/audiofile/LibSndFileFile.cpp
+++ b/orkbasecxx/audiofile/LibSndFileFile.cpp
@@ -54,7 +54,7 @@ void LibSndFileFile::Open(CStdString& filename, fileOpenModeEnum mode, bool ster
throw(CStdString("libsndfile: Selected output format not supported"));
}
- RecursiveMkdir(m_filename);
+ FileRecursiveMkdir(m_filename);
int sndFileMode;
mode == READ ? sndFileMode = SFM_READ : sndFileMode = SFM_WRITE;
diff --git a/orkbasecxx/audiofile/MediaChunkFile.cpp b/orkbasecxx/audiofile/MediaChunkFile.cpp
index e8fc437..83a1b9d 100644
--- a/orkbasecxx/audiofile/MediaChunkFile.cpp
+++ b/orkbasecxx/audiofile/MediaChunkFile.cpp
@@ -14,6 +14,7 @@
#include "ConfigManager.h"
#include "MediaChunkFile.h"
+#include "Utils.h"
#define MAX_CHUNK_SIZE 100000
@@ -168,7 +169,7 @@ void MediaChunkFile::Open(CStdString& filename, fileOpenModeEnum mode, bool ster
}
else
{
- RecursiveMkdir(m_filename);
+ FileRecursiveMkdir(m_filename);
m_stream = ACE_OS::fopen((PCSTR)m_filename, "wb");
}
if(!m_stream)
diff --git a/orkbasecxx/audiofile/PcmFile.cpp b/orkbasecxx/audiofile/PcmFile.cpp
index 706cb18..7c66cd5 100644
--- a/orkbasecxx/audiofile/PcmFile.cpp
+++ b/orkbasecxx/audiofile/PcmFile.cpp
@@ -11,6 +11,7 @@
*
*/
+#include "Utils.h"
#include "PcmFile.h"
PcmFile::PcmFile()
@@ -103,7 +104,7 @@ void PcmFile::Open(CStdString& filename, fileOpenModeEnum mode, bool stereo, int
}
else
{
- RecursiveMkdir(m_filename);
+ FileRecursiveMkdir(m_filename);
m_stream = ACE_OS::fopen((PCSTR)m_filename, "wb");
}
if(!m_stream)