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