1 // ANNA - Anna is Not Nothingness Anymore //
3 // (c) Copyright 2005-2015 Eduardo Ramos Testillano & Francisco Ruiz Rayo //
5 // See project site at http://redmine.teslayout.com/projects/anna-suite //
6 // See accompanying file LICENSE or copy at http://www.teslayout.com/projects/public/anna.LICENSE //
9 #ifndef dbos_workdir_filesystem_Directory_hpp
10 #define dbos_workdir_filesystem_Directory_hpp
12 #include "Abstract.hpp"
16 namespace filesystem {
20 class Directory : public Abstract {
22 Directory (const std::string& name) : Abstract (ClassType::Directory, name) {;}
23 Directory (Directory* parent, const std::string& name) : Abstract (ClassType::Directory, parent, name) {;}
25 void print (const int level = 0) const ;
27 static Directory* down_cast (Abstract* abstract) {
28 return (abstract->getClassType () == ClassType::Directory) ? static_cast <Directory*> (abstract): NULL;
30 static const Directory* down_cast (const Abstract* abstract) {
31 return (abstract->getClassType () == ClassType::Directory) ? static_cast <const Directory*> (abstract): NULL;