Gray C++ Libraries  0.0.2
A set of C++ libraries for MSVC, GNU on Windows, WinCE, Linux
GrayLib::cSyncOp Class Reference

#include <cSyncDir.h>

Inheritance diagram for GrayLib::cSyncOp:
Gray::cRefBase IUnknown

Public Member Functions

 cSyncOp (cSyncOp *pParent, CSYNCOP_TYPE eOp, cManifestElem *pElem)
 
 ~cSyncOp ()
 
cStringF get_Name () const
 
bool isAttrDir () const
 
cStringF get_RelativePath () const
 
bool IsOpPull () const
 
void AddChildOpType (CSYNCOP_TYPE eOp)
 
void AddChildOp (cSyncOp *pOp)
 
- Public Member Functions inherited from Gray::cRefBase
 cRefBase (int iRefCount=0) noexcept
 
virtual ~cRefBase ()
 
int get_RefCount () const noexcept
 
HASHCODE_t get_HashCode () const noexcept
 
 STDMETHOD_ (HASHCODE_t, get_HashCodeX)() const noexcept
 
virtual void onFinalRelease ()
 
bool isValidObj () const noexcept
 
 STDMETHOD_ (ULONG, AddRef)(void) override
 
 STDMETHOD_ (ULONG, Release)(void) override
 
STDMETHOD() QueryInterface (const IID &riid, void __RPC_FAR *__RPC_FAR *ppvObject) override
 
void IncRefCount ()
 
void DecRefCount ()
 
bool isStaticConstruct () const noexcept
 
void StaticConstruct ()
 
void StaticDestruct ()
 
bool isDestructing () noexcept
 
void SetDestructing ()
 

Static Public Member Functions

static bool IsOpPull (CSYNCOP_TYPE eOp)
 

Public Attributes

cSyncOp *const m_pParent
 May parent directory operation. More...
 
CSYNCOP_TYPE m_eOp
 What operation to perform on m_pElem? More...
 
cManifestElemPtr const m_pElem
 the file that will result from this operation. (local manifest) More...
 
CSYNC_TYPE m_eChildOpTypes
 If this is a directory. More...
 
cArraySortName< cSyncOpm_aChildElems
 the list of file operations to perform in this directory. More...
 

Detailed Description

A sync command operation inside a particular directory. May have child sub-operations. Must rebuild the directory manifest when complete.

Constructor & Destructor Documentation

◆ cSyncOp()

GrayLib::cSyncOp::cSyncOp ( cSyncOp pParent,
CSYNCOP_TYPE  eOp,
cManifestElem pElem 
)
inline

◆ ~cSyncOp()

GrayLib::cSyncOp::~cSyncOp ( )
inline

Member Function Documentation

◆ AddChildOp()

void GrayLib::cSyncOp::AddChildOp ( cSyncOp pOp)
inline

◆ AddChildOpType()

void GrayLib::cSyncOp::AddChildOpType ( CSYNCOP_TYPE  eOp)
inline

◆ get_Name()

cStringF GrayLib::cSyncOp::get_Name ( ) const
inline

◆ get_RelativePath()

cStringF GrayLib::cSyncOp::get_RelativePath ( ) const
inline

◆ isAttrDir()

bool GrayLib::cSyncOp::isAttrDir ( ) const
inline

◆ IsOpPull() [1/2]

bool GrayLib::cSyncOp::IsOpPull ( ) const
inline

◆ IsOpPull() [2/2]

static bool GrayLib::cSyncOp::IsOpPull ( CSYNCOP_TYPE  eOp)
inlinestatic

Member Data Documentation

◆ m_aChildElems

cArraySortName<cSyncOp> GrayLib::cSyncOp::m_aChildElems

the list of file operations to perform in this directory.

◆ m_eChildOpTypes

CSYNC_TYPE GrayLib::cSyncOp::m_eChildOpTypes

If this is a directory.

What type of ops are in m_aElems. CSYNC_Pull, CSYNC_Push, CSYNC_Newer ?

◆ m_eOp

CSYNCOP_TYPE GrayLib::cSyncOp::m_eOp

What operation to perform on m_pElem?

◆ m_pElem

cManifestElemPtr const GrayLib::cSyncOp::m_pElem

the file that will result from this operation. (local manifest)

◆ m_pParent

cSyncOp* const GrayLib::cSyncOp::m_pParent

May parent directory operation.


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