summaryrefslogtreecommitdiff
path: root/dir.cpp
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2013-04-06 13:14:42 +0200
committerPaul Buetow <paul@buetow.org>2013-04-06 13:14:42 +0200
commit98eac951f8087b213f5850bd126dcb279db360a8 (patch)
treec121f5c4df1aab847defa539990c1315bd5ba4a8 /dir.cpp
parent0537da9d1e0f593130fc3967befb71e673b016bc (diff)
tagging ychat-0.6ychat-0.6
Diffstat (limited to 'dir.cpp')
-rwxr-xr-xdir.cpp58
1 files changed, 58 insertions, 0 deletions
diff --git a/dir.cpp b/dir.cpp
new file mode 100755
index 0000000..7c5ef08
--- /dev/null
+++ b/dir.cpp
@@ -0,0 +1,58 @@
+#ifndef DIR_CPP
+#define DIR_CPP
+
+#include "dir.h"
+
+using namespace std;
+
+dir::dir()
+{
+ p_dir_vec = new vector<string>;
+}
+
+dir::~dir()
+{
+ p_dir_vec->clear();
+}
+
+
+
+bool
+dir::open_dir( char *c_dir )
+{
+ return open_dir( *new string( c_dir ) );
+}
+
+bool
+dir::open_dir( string &s_dir )
+{
+ dp = opendir( s_dir.c_str() );
+
+ if ( dp == NULL )
+ return false; // Could not open dir.
+
+ return true; // Could open dir with success.
+}
+
+void
+dir::close_dir()
+{
+ if ( dp != NULL )
+ closedir( dp );
+}
+
+void
+dir::read_dir()
+{
+ if ( dp != NULL )
+ while( ep = readdir( dp ) )
+ p_dir_vec->push_back( *new string( ep->d_name ) );
+}
+
+vector<string>*
+dir::get_dir_vec()
+{
+ return p_dir_vec;
+}
+
+#endif