source: trunk/libtransmission/inout.h @ 12545

Last change on this file since 12545 was 12545, checked in by jordan, 10 years ago

(trunk libT) minor #include cleanups

  • Property svn:keywords set to Date Rev Author Id
File size: 2.0 KB
RevLine 
[7632]1/*
[11709]2 * This file Copyright (C) Mnemosyne LLC
[1]3 *
[11599]4 * This file is licensed by the GPL version 2. Works owned by the
[7632]5 * Transmission project are granted a special exemption to clause 2(b)
[8903]6 * so that the bulk of its code can remain under the MIT license.
[7632]7 * This exemption does not extend to derived works not owned by
8 * the Transmission project.
[260]9 *
[7632]10 * $Id: inout.h 12545 2011-07-13 03:23:37Z jordan $
11 */
[1]12
[7151]13#ifndef __TRANSMISSION__
[7632]14 #error only libtransmission should #include this header.
[7151]15#endif
16
[1]17#ifndef TR_IO_H
18#define TR_IO_H 1
19
[3105]20struct tr_torrent;
[1]21
[4734]22/**
[8561]23 * @addtogroup file_io File IO
24 * @{
25 */
26
27/**
[4734]28 * Reads the block specified by the piece index, offset, and length.
[6842]29 * @return 0 on success, or an errno value on failure.
[4734]30 */
[8912]31int tr_ioRead( struct tr_torrent   * tor,
32               tr_piece_index_t      pieceIndex,
33               uint32_t              offset,
34               uint32_t              len,
35               uint8_t             * setme );
[1356]36
[12545]37int tr_ioPrefetch( tr_torrent       * tor,
38                   tr_piece_index_t   pieceIndex,
39                   uint32_t           begin,
40                   uint32_t           len );
[9495]41
[4734]42/**
43 * Writes the block specified by the piece index, offset, and length.
[6842]44 * @return 0 on success, or an errno value on failure.
[4734]45 */
[8912]46int tr_ioWrite( struct tr_torrent  * tor,
47                tr_piece_index_t     pieceIndex,
48                uint32_t             offset,
49                uint32_t             len,
50                const uint8_t      * writeme );
[4734]51
[3105]52/**
[7559]53 * @brief Test to see if the piece matches its metainfo's SHA1 checksum.
[5042]54 */
[12204]55bool tr_ioTestPiece( tr_torrent       * tor,
56                     tr_piece_index_t   piece );
[1]57
[3105]58
[6073]59/**
60 * Converts a piece index + offset into a file index + offset.
61 */
[12076]62void tr_ioFindFileLocation( const tr_torrent  * tor,
63                             tr_piece_index_t   pieceIndex,
64                             uint32_t           pieceOffset,
65                             tr_file_index_t  * fileIndex,
66                             uint64_t         * fileOffset );
[6073]67
68
[8561]69/* @} */
[1]70#endif
Note: See TracBrowser for help on using the repository browser.