Guitar
Public Member Functions | Static Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | Friends | List of all members
GitObjectManager Class Reference

#include <GitObjectManager.h>

Public Member Functions

 GitObjectManager ()
 
 GitObjectManager (GitPtr g)
 
void setup (GitPtr g)
 
bool catFile (const Git::CommitID &id, QByteArray *out, Git::Object::Type *type)
 
void clearIndexes ()
 

Static Public Member Functions

static QStringList findObject (const QString &id, const QString &repo_local_dir)
 GitObjectManager::findObject. More...
 

Private Member Functions

QString workingDir ()
 
bool extractObjectFromPackFile (GitPackIdxPtr const &idx, GitPackIdxItem const *item, GitPack::Object *out)
 
bool extractObjectFromPackFile (const Git::CommitID &id, QByteArray *out, Git::Object::Type *type)
 
void loadIndexes ()
 
QString findObjectPath (const Git::CommitID &id)
 
bool loadObject (const Git::CommitID &id, QByteArray *out, Git::Object::Type *type)
 
GitPtr git ()
 
GitPtr git (Git::SubmoduleItem const &submod)
 
void init ()
 

Static Private Member Functions

static void applyDelta (QByteArray const *base, QByteArray const *delta, QByteArray *out)
 
static bool loadPackedObject (GitPackIdxPtr const &idx, QIODevice *packfile, GitPackIdxItem const *item, GitPack::Object *out)
 

Private Attributes

GitPtr g
 
QMutex mutex
 
QString subdir_git_objects
 
QString subdir_git_objects_pack
 
std::vector< GitPackIdxPtrgit_idx_list
 

Friends

class GitObjectCache
 

Constructor & Destructor Documentation

◆ GitObjectManager() [1/2]

GitObjectManager::GitObjectManager ( )
Here is the call graph for this function:

◆ GitObjectManager() [2/2]

GitObjectManager::GitObjectManager ( GitPtr  g)
Here is the call graph for this function:

Member Function Documentation

◆ applyDelta()

void GitObjectManager::applyDelta ( QByteArray const *  base,
QByteArray const *  delta,
QByteArray *  out 
)
staticprivate

◆ catFile()

bool GitObjectManager::catFile ( const Git::CommitID id,
QByteArray *  out,
Git::Object::Type type 
)
Here is the call graph for this function:

◆ clearIndexes()

void GitObjectManager::clearIndexes ( )

◆ extractObjectFromPackFile() [1/2]

bool GitObjectManager::extractObjectFromPackFile ( const Git::CommitID id,
QByteArray *  out,
Git::Object::Type type 
)
private
Here is the call graph for this function:

◆ extractObjectFromPackFile() [2/2]

bool GitObjectManager::extractObjectFromPackFile ( GitPackIdxPtr const &  idx,
GitPackIdxItem const *  item,
GitPack::Object out 
)
private
Here is the call graph for this function:

◆ findObject()

QStringList GitObjectManager::findObject ( const QString &  id,
const QString &  repo_local_dir 
)
static

GitObjectManager::findObject.

Parameters
id
repo_local_dir
Here is the call graph for this function:

◆ findObjectPath()

QString GitObjectManager::findObjectPath ( const Git::CommitID id)
private
Here is the call graph for this function:

◆ git() [1/2]

GitPtr GitObjectManager::git ( )
inlineprivate

◆ git() [2/2]

GitPtr GitObjectManager::git ( Git::SubmoduleItem const &  submod)
inlineprivate

◆ init()

void GitObjectManager::init ( )
private

◆ loadIndexes()

void GitObjectManager::loadIndexes ( )
private
Here is the call graph for this function:

◆ loadObject()

bool GitObjectManager::loadObject ( const Git::CommitID id,
QByteArray *  out,
Git::Object::Type type 
)
private
Here is the call graph for this function:

◆ loadPackedObject()

bool GitObjectManager::loadPackedObject ( GitPackIdxPtr const &  idx,
QIODevice *  packfile,
GitPackIdxItem const *  item,
GitPack::Object out 
)
staticprivate
Here is the call graph for this function:

◆ setup()

void GitObjectManager::setup ( GitPtr  g)
Here is the call graph for this function:

◆ workingDir()

QString GitObjectManager::workingDir ( )
private

Friends And Related Function Documentation

◆ GitObjectCache

friend class GitObjectCache
friend

Member Data Documentation

◆ g

GitPtr GitObjectManager::g
private

◆ git_idx_list

std::vector<GitPackIdxPtr> GitObjectManager::git_idx_list
private

◆ mutex

QMutex GitObjectManager::mutex
private

◆ subdir_git_objects

QString GitObjectManager::subdir_git_objects
private

◆ subdir_git_objects_pack

QString GitObjectManager::subdir_git_objects_pack
private

The documentation for this class was generated from the following files: