windows-nt/Source/XPSP1/NT/admin/netui/common/h/lmoerepl.hxx

485 lines
12 KiB
C++
Raw Permalink Normal View History

2020-09-26 03:20:57 -05:00
/**********************************************************************/
/** Microsoft LAN Manager **/
/** Copyright(c) Microsoft Corp., 1990, 1991 **/
/**********************************************************************/
/*
lmoerepl.hxx
This file contains the class declarations for the REPL_EDIR0_ENUM,
REPL_EDIR1_ENUM, REPL_EDIR2_ENUM, REPL_IDIR0_ENUM, and
REPL_IDIR1_ENUM classes and their associated iterators.
and FILE3_ENUM_ITER classes.
FILE HISTORY:
KeithMo 26-Feb-1992 Created for the Server Manager.
*/
#ifndef _LMOEREPL_HXX_
#define _LMOEREPL_HXX_
#include "lmoenum.hxx"
#include "string.hxx"
//
// Export directory enumerators.
//
/*************************************************************************
NAME: REPL_EDIR_ENUM
SYNOPSIS: Base class for replicator export directory enumerations.
INTERFACE: REPL_EDIR_ENUM - Class constructor.
~REPL_EDIR__ENUM - Class destructor.
CallAPI - Invoke the enumeration API.
PARENT: LOC_LM_ENUM
USES: NLS_STR
HISTORY:
KeithMo 26-Feb-1992 Created
**************************************************************************/
DLL_CLASS REPL_EDIR_ENUM : public LOC_LM_ENUM
{
private:
virtual APIERR CallAPI( BYTE ** ppbBuffer,
UINT * pcEntriesRead );
protected:
REPL_EDIR_ENUM( const TCHAR * pszServer,
UINT Level );
}; // class REPL_EDIR_ENUM
/*************************************************************************
NAME: REPL_EDIR0_ENUM
SYNOPSIS: Info level 0 replicator export directory enumerator.
INTERFACE: REPL_EDIR0_ENUM - Class constructor.
~REPL_EDIR0_ENUM - Class destructor.
PARENT: REPL_EDIR_ENUM
HISTORY:
KeithMo 26-Feb-1992 Created
**************************************************************************/
DLL_CLASS REPL_EDIR0_ENUM : public REPL_EDIR_ENUM
{
public:
REPL_EDIR0_ENUM( const TCHAR * pszServer );
}; // class REPL_EDIR0_ENUM
/*************************************************************************
NAME: REPL_EDIR0_ENUM_OBJ
SYNOPSIS: This is basically the return type from the
REPL_EDIR0_ENUM_ITER iterator.
INTERFACE: REPL_EDIR0_ENUM_OBJ - Class constructor.
~REPL_EDIR0_ENUM_OBJ - Class destructor.
QueryBufferPtr - Replaces ENUM_OBJ_BASE method.
QueryDirName - Returns the directory name.
PARENT: ENUM_OBJ_BASE
HISTORY:
KeithMo 26-Feb-1992 Created
**************************************************************************/
DLL_CLASS REPL_EDIR0_ENUM_OBJ : public ENUM_OBJ_BASE
{
public:
//
// Provide properly-casted buffer Query/Set methods.
//
const REPL_EDIR_INFO_0 * QueryBufferPtr( VOID ) const
{ return (const REPL_EDIR_INFO_0 *)ENUM_OBJ_BASE::QueryBufferPtr(); }
VOID SetBufferPtr( const REPL_EDIR_INFO_0 * pBuffer )
{ ENUM_OBJ_BASE::SetBufferPtr( (const BYTE *)pBuffer ); }
//
// Accessors.
//
DECLARE_ENUM_ACCESSOR( QueryDirName, const TCHAR *, rped0_dirname );
}; // class REPL_EDIR0_ENUM_OBJ
DECLARE_LM_ENUM_ITER_OF( REPL_EDIR0, REPL_EDIR_INFO_0 );
/*************************************************************************
NAME: REPL_EDIR1_ENUM
SYNOPSIS: Info level 1 replicator export directory enumerator.
INTERFACE: REPL_EDIR1_ENUM - Class constructor.
~REPL_EDIR1_ENUM - Class destructor.
PARENT: REPL_EDIR_ENUM
HISTORY:
KeithMo 26-Feb-1992 Created
**************************************************************************/
DLL_CLASS REPL_EDIR1_ENUM : public REPL_EDIR_ENUM
{
public:
REPL_EDIR1_ENUM( const TCHAR * pszServer );
}; // class REPL_EDIR1_ENUM
/*************************************************************************
NAME: REPL_EDIR1_ENUM_OBJ
SYNOPSIS: This is basically the return type from the
REPL_EDIR1_ENUM_ITER iterator.
INTERFACE: REPL_EDIR1_ENUM_OBJ - Class constructor.
~REPL_EDIR1_ENUM_OBJ - Class destructor.
QueryBufferPtr - Replaces ENUM_OBJ_BASE method.
QueryDirName - Returns the directory name.
QueryIntegrity - Returns the directory integrity.
QueryExtent - Returns the directory extent.
PARENT: ENUM_OBJ_BASE
HISTORY:
KeithMo 26-Feb-1992 Created
**************************************************************************/
DLL_CLASS REPL_EDIR1_ENUM_OBJ : public ENUM_OBJ_BASE
{
public:
//
// Provide properly-casted buffer Query/Set methods.
//
const REPL_EDIR_INFO_1 * QueryBufferPtr( VOID ) const
{ return (const REPL_EDIR_INFO_1 *)ENUM_OBJ_BASE::QueryBufferPtr(); }
VOID SetBufferPtr( const REPL_EDIR_INFO_1 * pBuffer )
{ ENUM_OBJ_BASE::SetBufferPtr( (const BYTE *)pBuffer ); }
//
// Accessors.
//
DECLARE_ENUM_ACCESSOR( QueryDirName, const TCHAR *, rped1_dirname );
DECLARE_ENUM_ACCESSOR( QueryIntegrity, ULONG, rped1_integrity );
DECLARE_ENUM_ACCESSOR( QueryExtent, ULONG, rped1_extent );
}; // class REPL_EDIR1_ENUM_OBJ
DECLARE_LM_ENUM_ITER_OF( REPL_EDIR1, REPL_EDIR_INFO_1 );
/*************************************************************************
NAME: REPL_EDIR2_ENUM
SYNOPSIS: Info level 2 replicator export directory enumerator.
INTERFACE: REPL_EDIR2_ENUM - Class constructor.
~REPL_EDIR2_ENUM - Class destructor.
PARENT: REPL_EDIR_ENUM
HISTORY:
KeithMo 26-Feb-1992 Created
**************************************************************************/
DLL_CLASS REPL_EDIR2_ENUM : public REPL_EDIR_ENUM
{
public:
REPL_EDIR2_ENUM( const TCHAR * pszServer );
}; // class REPL_EDIR2_ENUM
/*************************************************************************
NAME: REPL_EDIR2_ENUM_OBJ
SYNOPSIS: This is basically the return type from the
REPL_EDIR2_ENUM_ITER iterator.
INTERFACE: REPL_EDIR2_ENUM_OBJ - Class constructor.
~REPL_EDIR2_ENUM_OBJ - Class destructor.
QueryBufferPtr - Replaces ENUM_OBJ_BASE method.
QueryDirName - Returns the directory name.
QueryIntegrity - Returns the directory integrity.
QueryExtent - Returns the directory extent.
QueryLockCount - Returns the directory lock count.
QueryLockTime - Returns the directory lock time.
PARENT: ENUM_OBJ_BASE
HISTORY:
KeithMo 26-Feb-1992 Created
**************************************************************************/
DLL_CLASS REPL_EDIR2_ENUM_OBJ : public ENUM_OBJ_BASE
{
public:
//
// Provide properly-casted buffer Query/Set methods.
//
const REPL_EDIR_INFO_2 * QueryBufferPtr( VOID ) const
{ return (const REPL_EDIR_INFO_2 *)ENUM_OBJ_BASE::QueryBufferPtr(); }
VOID SetBufferPtr( const REPL_EDIR_INFO_2 * pBuffer )
{ ENUM_OBJ_BASE::SetBufferPtr( (const BYTE *)pBuffer ); }
//
// Accessors.
//
DECLARE_ENUM_ACCESSOR( QueryDirName, const TCHAR *, rped2_dirname );
DECLARE_ENUM_ACCESSOR( QueryIntegrity, ULONG, rped2_integrity );
DECLARE_ENUM_ACCESSOR( QueryExtent, ULONG, rped2_extent );
DECLARE_ENUM_ACCESSOR( QueryLockCount, ULONG, rped2_lockcount );
DECLARE_ENUM_ACCESSOR( QueryLockTime, ULONG, rped2_locktime );
}; // class REPL_EDIR2_ENUM_OBJ
DECLARE_LM_ENUM_ITER_OF( REPL_EDIR2, REPL_EDIR_INFO_2 );
//
// Import directory enumerators.
//
/*************************************************************************
NAME: REPL_IDIR_ENUM
SYNOPSIS: Base class for replicator export directory enumerations.
INTERFACE: REPL_IDIR_ENUM - Class constructor.
~REPL_IDIR__ENUM - Class destructor.
CallAPI - Invoke the enumeration API.
PARENT: LOC_LM_ENUM
USES: NLS_STR
HISTORY:
KeithMo 26-Feb-1992 Created
**************************************************************************/
DLL_CLASS REPL_IDIR_ENUM : public LOC_LM_ENUM
{
private:
virtual APIERR CallAPI( BYTE ** ppbBuffer,
UINT * pcEntriesRead );
protected:
REPL_IDIR_ENUM( const TCHAR * pszServer,
UINT Level );
}; // class REPL_IDIR_ENUM
/*************************************************************************
NAME: REPL_IDIR0_ENUM
SYNOPSIS: Info level 0 replicator export directory enumerator.
INTERFACE: REPL_IDIR0_ENUM - Class constructor.
~REPL_IDIR0_ENUM - Class destructor.
PARENT: REPL_IDIR_ENUM
HISTORY:
KeithMo 26-Feb-1992 Created
**************************************************************************/
DLL_CLASS REPL_IDIR0_ENUM : public REPL_IDIR_ENUM
{
public:
REPL_IDIR0_ENUM( const TCHAR * pszServer );
}; // class REPL_IDIR0_ENUM
/*************************************************************************
NAME: REPL_IDIR0_ENUM_OBJ
SYNOPSIS: This is basically the return type from the
REPL_IDIR0_ENUM_ITER iterator.
INTERFACE: REPL_IDIR0_ENUM_OBJ - Class constructor.
~REPL_IDIR0_ENUM_OBJ - Class destructor.
QueryBufferPtr - Replaces ENUM_OBJ_BASE method.
QueryDirName - Returns the directory name.
PARENT: ENUM_OBJ_BASE
HISTORY:
KeithMo 26-Feb-1992 Created
**************************************************************************/
DLL_CLASS REPL_IDIR0_ENUM_OBJ : public ENUM_OBJ_BASE
{
public:
//
// Provide properly-casted buffer Query/Set methods.
//
const REPL_IDIR_INFO_0 * QueryBufferPtr( VOID ) const
{ return (const REPL_IDIR_INFO_0 *)ENUM_OBJ_BASE::QueryBufferPtr(); }
VOID SetBufferPtr( const REPL_IDIR_INFO_0 * pBuffer )
{ ENUM_OBJ_BASE::SetBufferPtr( (const BYTE *)pBuffer ); }
//
// Accessors.
//
DECLARE_ENUM_ACCESSOR( QueryDirName, const TCHAR *, rpid0_dirname );
}; // class REPL_IDIR0_ENUM_OBJ
DECLARE_LM_ENUM_ITER_OF( REPL_IDIR0, REPL_IDIR_INFO_0 );
/*************************************************************************
NAME: REPL_IDIR1_ENUM
SYNOPSIS: Info level 1 replicator export directory enumerator.
INTERFACE: REPL_IDIR1_ENUM - Class constructor.
~REPL_IDIR1_ENUM - Class destructor.
PARENT: REPL_IDIR_ENUM
HISTORY:
KeithMo 26-Feb-1992 Created
**************************************************************************/
DLL_CLASS REPL_IDIR1_ENUM : public REPL_IDIR_ENUM
{
public:
REPL_IDIR1_ENUM( const TCHAR * pszServer );
}; // class REPL_IDIR1_ENUM
/*************************************************************************
NAME: REPL_IDIR1_ENUM_OBJ
SYNOPSIS: This is basically the return type from the
REPL_IDIR1_ENUM_ITER iterator.
INTERFACE: REPL_IDIR1_ENUM_OBJ - Class constructor.
~REPL_IDIR1_ENUM_OBJ - Class destructor.
QueryBufferPtr - Replaces ENUM_OBJ_BASE method.
QueryDirName - Returns the directory name.
QueryState - Returns the directory state.
QueryMasterName - Returns the directory master name.
QueryLastUpdateTime - Returns the time of the last update.
QueryLockCount - Returns the lock count.
QueryLockTime - Returns the lock time.
PARENT: ENUM_OBJ_BASE
HISTORY:
KeithMo 26-Feb-1992 Created
**************************************************************************/
DLL_CLASS REPL_IDIR1_ENUM_OBJ : public ENUM_OBJ_BASE
{
public:
//
// Provide properly-casted buffer Query/Set methods.
//
const REPL_IDIR_INFO_1 * QueryBufferPtr( VOID ) const
{ return (const REPL_IDIR_INFO_1 *)ENUM_OBJ_BASE::QueryBufferPtr(); }
VOID SetBufferPtr( const REPL_IDIR_INFO_1 * pBuffer )
{ ENUM_OBJ_BASE::SetBufferPtr( (const BYTE *)pBuffer ); }
//
// Accessors.
//
DECLARE_ENUM_ACCESSOR( QueryDirName, const TCHAR *, rpid1_dirname );
DECLARE_ENUM_ACCESSOR( QueryState, ULONG, rpid1_state );
DECLARE_ENUM_ACCESSOR( QueryMasterName, const TCHAR *, rpid1_mastername );
DECLARE_ENUM_ACCESSOR( QueryLastUpdateTime, ULONG, rpid1_last_update_time );
DECLARE_ENUM_ACCESSOR( QueryLockCount, ULONG, rpid1_lockcount );
DECLARE_ENUM_ACCESSOR( QueryLockTime, ULONG, rpid1_locktime );
}; // class REPL_IDIR1_ENUM_OBJ
DECLARE_LM_ENUM_ITER_OF( REPL_IDIR1, REPL_IDIR_INFO_1 );
#endif // _LMOEREPL_HXX_