00001 #ifndef LOOP_H 00002 #define LOOP_H 00003 00004 #include "y2storage/Volume.h" 00005 00006 class LoopCo; 00007 00008 class Loop : public Volume 00009 { 00010 public: 00011 Loop( const LoopCo& d, const string& LoopDev, const string& LoopFile ); 00012 Loop( const LoopCo& d, const string& file, bool reuseExisting, 00013 unsigned long long sizeK ); 00014 Loop( const LoopCo& d, const Loop& d ); 00015 virtual ~Loop(); 00016 const string& loopFile() const { return lfile; } 00017 void setDelFile( bool val=true ) { delFile=val; } 00018 bool removeFile(); 00019 bool createFile(); 00020 string lfileRealPath() const; 00021 friend std::ostream& operator<< (std::ostream& s, const Loop& l ); 00022 00023 virtual void print( std::ostream& s ) const { s << *this; } 00024 string removeText( bool doing ) const; 00025 string createText( bool doing ) const; 00026 string formatText( bool doing ) const; 00027 00028 void getInfo( storage::LoopInfo& info ) const; 00029 bool equalContent( const Loop& rhs ) const; 00030 void logDifference( const Loop& d ) const; 00031 00032 static bool notDeleted( const Loop& l ) { return( !l.deleted() ); } 00033 00034 protected: 00035 void init(); 00036 Loop& operator=( const Loop& ); 00037 00038 string lfile; 00039 bool reuseFile; 00040 bool delFile; 00041 mutable storage::LoopInfo info; 00042 }; 00043 00044 #endif
1.4.4