//////////////////////////////////////////////////////////////////////////////// /*! @file FileNode.h Базовые типы терминальных объектов сети. - Part of RANet - Research Assistant Net Library (based on ANSI C++). - Copyright(C) 2016, Viktor E. Bursian, St.Petersburg, Russia. Viktor.Bursian@mail.ioffe.ru */////////////////////////////////////////////////////////////////////////////// #ifndef FileNode_H #define FileNode_H #include "BasicNodes.h" #include "Net.h" #include "Files.h" #include namespace RA { //------------------------------------------------------------------------------ ANNOUNCE_CLASS(sFileNode) //ANNOUNCE_CLASS(sUndoAssignValue2FileNode) //---------------------------------------------------------------- sFileNode --- class RANet_EXPORT sFileNode : public sByteArrayNode { STORABLE(sFileNode) public: sFileNode () :sByteArrayNode() {} sFileNode (const std::vector & byte_array) :sByteArrayNode(byte_array) {} sFileNode (rcsPath); virtual sString Text (eTextFormat /*F=Plain*/ ,eTextDetalization /*D=Casual*/ ); //!< visual representation for user virtual sPath Path (); virtual void AssignPath (rcsPath); virtual void AssignPath (rcsString); protected: virtual void CopyFrom (psNode); virtual bool ImportFrom (sPath); virtual bool ExportTo (sPath); private: sPath ThePath; // friend class sUndoAssignValue2FileNode; }; //------------------------------------------------------------------------------ } //namespace RA #endif