00001 #ifndef SCTARCHIVING_ARCHIVINGCOMMAND_H
00002 #define SCTARCHIVING_ARCHIVINGCOMMAND_H
00003 #include <list>
00004 #include <boost/shared_ptr.hpp>
00005 #include <iostream>
00006
00007 namespace SctArchiving{
00014 class ArchivingCommand {
00015 public:
00017 virtual ~ArchivingCommand(){}
00019 virtual void execute()=0;
00021 virtual boost::shared_ptr<ArchivingCommand> create() const=0;
00022 protected:
00023 ArchivingCommand() {}
00024 };
00025
00026 }
00027
00028
00029 #endif //#ifndef SCTARCHIVING_ARCHIVINGCOMMAND_H