--- /dev/null
+// ANNA - Anna is Not Nothingness Anymore //
+// //
+// (c) Copyright 2005-2015 Eduardo Ramos Testillano & Francisco Ruiz Rayo //
+// //
+// See project site at http://redmine.teslayout.com/projects/anna-suite //
+// See accompanying file LICENSE or copy at http://www.teslayout.com/projects/public/anna.LICENSE //
+
+
+#ifndef dbos_workdir_filesystem_Directory_hpp
+#define dbos_workdir_filesystem_Directory_hpp
+
+#include "Abstract.hpp"
+
+namespace workdir {
+
+namespace filesystem {
+
+using namespace anna;
+
+class Directory : public Abstract {
+public:
+ Directory (const std::string& name) : Abstract (ClassType::Directory, name) {;}
+ Directory (Directory* parent, const std::string& name) : Abstract (ClassType::Directory, parent, name) {;}
+
+ void print (const int level = 0) const throw ();
+
+ static Directory* down_cast (Abstract* abstract) throw () {
+ return (abstract->getClassType () == ClassType::Directory) ? static_cast <Directory*> (abstract): NULL;
+ }
+ static const Directory* down_cast (const Abstract* abstract) throw () {
+ return (abstract->getClassType () == ClassType::Directory) ? static_cast <const Directory*> (abstract): NULL;
+ }
+};
+
+}
+}
+
+#endif