Project

General

Profile

Download (1.88 KB) Statistics
| Branch: | Tag: | Revision:
/********************************************************************
* This software is "commercial computer software" as defined in the *
* Federal Acquisition Regulations and is subject to BlackLynx *
* Inc's standard End User License Agreement. *
* *
* CONFIDENTIAL - All source code is the propriety and confidential *
* information of BlackLynx Inc. *
* *
* Copyright 2014-2020 BlackLynx Inc. *
* Unpublished -- all rights reserved under the copyright laws *
* of the United States. *
********************************************************************/

#ifndef __BLACKLYNX_CHUNK_H__
#define __BLACKLYNX_CHUNK_H__

#include <cstdint>
#include <string>
#include <vector>

namespace BlackLynx
{
namespace SearchLynx
{

class Chunk
{
public:
Chunk(
const std::string& filename,
uint64_t chunkId,
uint32_t chunkSize,
uint32_t extraSize,
uint64_t fileOffset);
virtual ~Chunk();
// NOTE: These are public (as they would be if this were a struct) so we
// don't have to deal with unnecessary getter/setter boilerplate
std::string m_filename; //!< name of file
uint64_t m_chunkId; //!< ID number of this chunk
uint32_t m_chunkSize; //!< number of bytes of data in this chunk
uint32_t m_extraSize; //!< how much extra data is tacked on to this chunk
uint64_t m_fileOffset; //!< absolute file offset of chunk's data
char* p_chunkData; //!< wrapped buffer for the chunk data
void allocateBuffer();
private:
};

}
}

#endif // __BLACKLYNX_EXECDRIVER_H__
(4-4/7)