diff options
author | Sam T <pxqr.sta@gmail.com> | 2013-07-17 04:08:20 +0400 |
---|---|---|
committer | Sam T <pxqr.sta@gmail.com> | 2013-07-17 04:08:20 +0400 |
commit | 22a3557ed14008a655d20ad216db22134442ed5b (patch) | |
tree | 144bfa1beff36f2a6d13a3b15266190704c6fe9e /src/Data | |
parent | 36cac7b4646d64c485320f066e6fb6a2a54427d3 (diff) |
+ Add a few auxilaru functions.
Diffstat (limited to 'src/Data')
-rw-r--r-- | src/Data/Torrent.hs | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/Data/Torrent.hs b/src/Data/Torrent.hs index 8e837b56..a1df0034 100644 --- a/src/Data/Torrent.hs +++ b/src/Data/Torrent.hs | |||
@@ -33,7 +33,7 @@ module Data.Torrent | |||
33 | 33 | ||
34 | -- * Files layout | 34 | -- * Files layout |
35 | , Layout, contentLayout | 35 | , Layout, contentLayout |
36 | , contentLength, fileOffset | 36 | , contentLength, fileCount, fileOffset |
37 | , pieceCount, blockCount | 37 | , pieceCount, blockCount |
38 | , isSingleFile, isMultiFile | 38 | , isSingleFile, isMultiFile |
39 | 39 | ||
@@ -415,6 +415,11 @@ contentLength :: ContentInfo -> Integer | |||
415 | contentLength SingleFile { ciLength = len } = len | 415 | contentLength SingleFile { ciLength = len } = len |
416 | contentLength MultiFile { ciFiles = tfs } = sum (map fiLength tfs) | 416 | contentLength MultiFile { ciFiles = tfs } = sum (map fiLength tfs) |
417 | 417 | ||
418 | -- | Get count of all files in torrent. | ||
419 | fileCount :: ContentInfo -> Int | ||
420 | fileCount SingleFile {..} = 1 | ||
421 | fileCount MultiFile {..} = length ciFiles | ||
422 | |||
418 | -- | Find count of pieces in the torrent. If torrent size is not a | 423 | -- | Find count of pieces in the torrent. If torrent size is not a |
419 | -- multiple of piece size then the count is rounded up. | 424 | -- multiple of piece size then the count is rounded up. |
420 | pieceCount :: ContentInfo -> Int | 425 | pieceCount :: ContentInfo -> Int |