/* */ #ifndef D_CHUNK_CHECKSUM_H #define D_CHUNK_CHECKSUM_H #include "common.h" #include #include #include "SharedHandle.h" namespace aria2 { class ChunkChecksum { private: std::string hashType_; std::vector pieceHashes_; size_t pieceLength_; public: ChunkChecksum(); ChunkChecksum (const std::string& hashType, const std::vector& pieceHashes, size_t pieceLength); bool validateChunk(const std::string& actualDigest, size_t index) const; off_t getEstimatedDataLength() const; size_t countPieceHash() const; const std::string& getPieceHash(size_t index) const; void setPieceHashes(const std::vector& pieceHashes); const std::vector& getPieceHashes() const { return pieceHashes_; } void setHashType(const std::string& hashType); const std::string& getHashType() const { return hashType_; } size_t getPieceLength() const { return pieceLength_; } void setPieceLength(size_t length) { pieceLength_ = length; } }; } // namespace aria2 #endif // D_CHUNK_CHECKSUM_H