|
|
/*++
Copyright (C) Microsoft Corporation, 1997 - 1997 All rights reserved.
Module Name:
driverif.hxx
Abstract:
Driver Info Header
Author:
Steve Kiraly (SteveKi) 23-Jan-1997
Revision History:
--*/ #ifndef _DRIVERIF_HXX
#define _DRIVERIF_HXX
/********************************************************************
Driver Info Class
********************************************************************/ class TDriverInfo {
public: enum EType { kAdd, kRemove, kInstalled, kUpdate, kError, kRefresh, kRemoved, kUpdated, };
enum { kDriverVersion0, kDriverVersion1, kDriverVersion2, kDriverVersion3, };
TDriverInfo( IN EType eType = kError, IN UINT uLevel = 0, IN PVOID pInfo = NULL );
TDriverInfo( const TDriverInfo &rhs );
const TDriverInfo & operator=( const TDriverInfo &rhs );
~TDriverInfo( VOID );
BOOL bValid( VOID ) const;
VOID vSetInfoState( EType eType );
EType vGetInfoState( VOID ) const;
VOID vPrint( VOID ) const;
INT operator==( const TDriverInfo &DriverInfo ) const;
INT operator>( const TDriverInfo &DriverInfo ) const;
DLINK( TDriverInfo, DriverInfo );
VAR( TString, strVersion ); VAR( TString, strName ); VAR( TString, strEnvironment ); VAR( TString, strDriverPath ); VAR( TString, strDataFile ); VAR( TString, strConfigFile ); VAR( TString, strHelpFile ); VAR( TString, strMonitorName ); VAR( TString, strDefaultDataType ); VAR( DWORD, dwVersion ); VAR( TString, strEnv ); VAR( TString, strInfName );
LPCTSTR strDependentFiles( VOID );
private:
BOOL bVersionToString( IN DWORD dwVersion, IN OUT TString &strVersion ) const; BOOL bClone( IN const TDriverInfo &rhs );
BOOL bEnvironmentToString( IN LPCTSTR pszEnvironment, IN OUT TString &strVersion ) const;
UINT _uLevel; EType _eType; LPTSTR _pszDependentFiles;
};
/********************************************************************
Drivers info class.
********************************************************************/
class TDriverTransfer {
public:
TDriverTransfer( VOID );
~TDriverTransfer( VOID );
VAR( UINT, cDriverInfo ); DLINK_BASE( TDriverInfo, DriverInfoList, DriverInfo );
private:
//
// Copying and assignment are not defined.
//
TDriverTransfer( const TDriverTransfer & );
TDriverTransfer & operator =( const TDriverTransfer & );
};
#endif
|