25 #ifndef SRC_XRDCL_XRDCLXCPCTX_HH_ 26 #define SRC_XRDCL_XRDCLXCPCTX_HH_ 56 XCpCtx(
const std::vector<std::string> &urls, uint64_t blockSize, uint8_t parallelSrc, uint64_t chunkSize, uint64_t parallelChunks, int64_t fileSize );
114 std::pair<uint64_t, uint64_t>
GetBlock();
XRootDStatus Initialize()
void Delete()
Definition: XrdClXCpCtx.hh:61
int64_t GetSize()
Definition: XrdClXCpCtx.hh:129
XrdSysCondVar pFileSizeCV
Definition: XrdClXCpCtx.hh:261
XrdSysCondVar pDoneCV
Definition: XrdClXCpCtx.hh:290
uint8_t pParallelSrc
Definition: XrdClXCpCtx.hh:233
int64_t pFileSize
Definition: XrdClXCpCtx.hh:255
bool GetNextUrl(std::string &url)
void RemoveSrc(XCpSrc *src)
Definition: XrdClXCpCtx.hh:167
Definition: XrdClXCpSrc.hh:37
uint8_t pParallelChunks
Definition: XrdClXCpCtx.hh:243
std::pair< uint64_t, uint64_t > GetBlock()
XCpSrc * WeakestLink(XCpSrc *exclude)
void UnLock()
Definition: XrdSysPthread.hh:274
void PutChunk(ChunkInfo *chunk)
A synchronized queue.
Definition: XrdClSyncQueue.hh:32
size_t pRefCount
Definition: XrdClXCpCtx.hh:300
uint64_t pBlockSize
Definition: XrdClXCpCtx.hh:228
Definition: XrdSysPthread.hh:165
Definition: XrdClXCpCtx.hh:40
Definition: XrdSysPthread.hh:78
bool pDone
Definition: XrdClXCpCtx.hh:284
Describe a data chunk for vector read.
Definition: XrdClXRootDResponses.hh:907
XCpCtx(const std::vector< std::string > &urls, uint64_t blockSize, uint8_t parallelSrc, uint64_t chunkSize, uint64_t parallelChunks, int64_t fileSize)
std::list< XCpSrc * > pSources
Definition: XrdClXCpCtx.hh:267
Request status.
Definition: XrdClXRootDResponses.hh:218
Definition: XrdClAnyObject.hh:25
void Broadcast()
Definition: XrdSysPthread.hh:89
XrdSysMutex pMtx
Definition: XrdClXCpCtx.hh:295
Definition: XrdSysPthread.hh:129
XCpCtx * Self()
Definition: XrdClXCpCtx.hh:77
uint64_t pDataReceived
Definition: XrdClXCpCtx.hh:278
void NotifyInitExpectant()
Definition: XrdClXCpCtx.hh:197
uint32_t pChunkSize
Definition: XrdClXCpCtx.hh:238
void SetFileSize(int64_t size)
SyncQueue< ChunkInfo * > pSink
Definition: XrdClXCpCtx.hh:273
XRootDStatus GetChunk(XrdCl::ChunkInfo &ci)
uint64_t pOffset
Definition: XrdClXCpCtx.hh:250
Definition: XrdSysPthread.hh:262
std::queue< std::string > pUrls
Definition: XrdClXCpCtx.hh:223