/**********************************************************************/ /** Microsoft Windows/NT **/ /** Copyright(c) Microsoft Corp., 1991 **/ /**********************************************************************/ /* bltatom.hxx BLT atom manipulation classes: definition FILE HISTORY: beng 15-May-1991 Split from bltmisc.hxx */ #ifndef _BLT_HXX_ #error "Don't include this file directly; instead, include it through blt.hxx" #endif // _BLT_HXX_ #ifndef _BLTATOM_HXX_ #define _BLTATOM_HXX_ #include "base.hxx" DLL_CLASS NLS_STR; /********************************************************************** NAME: ATOM_BASE SYNOPSIS: atom base INTERFACE: QueryHandle() - handle for the atom operator=() - assign atom QueryString() - query atom PARENT: BASE HISTORY: RustanL 21-Nov-1990 Created beng 04-Oct-1991 Win32 conversion **********************************************************************/ DLL_CLASS ATOM_BASE : public BASE { private: ATOM _hAtom; virtual ATOM W_AddAtom( const TCHAR * pch ) const = 0; virtual APIERR W_QueryString( TCHAR * pchBuffer, UINT chBuf ) const = 0; protected: ATOM_BASE(); ATOM_BASE( ATOM hAtom ); ~ATOM_BASE(); const TCHAR * AssignAux( const TCHAR * pch ); public: ATOM QueryHandle() const { return _hAtom; } virtual const TCHAR * operator=( const TCHAR * pch ) = 0; APIERR QueryString( TCHAR * pchBuffer, UINT cbBuf ) const; }; /********************************************************************** NAME: GLOBAL_ATOM SYNOPSIS: global atom class INTERFACE: GLOBAL_ATOM() - constructor ~GLOBAL_ATOM() - destructor operator=() - assignment PARENT: ATOM_BASE HISTORY: RustanL 21-Nov-1990 Created beng 04-Oct-1991 Win32 conversion **********************************************************************/ DLL_CLASS GLOBAL_ATOM : public ATOM_BASE { private: virtual ATOM W_AddAtom( const TCHAR * pch ) const; virtual APIERR W_QueryString( TCHAR * pchBuffer, UINT cbBuf ) const; public: GLOBAL_ATOM( const TCHAR * pch = NULL ); ~GLOBAL_ATOM(); const TCHAR * operator=( const TCHAR * pch ); }; /********************************************************************** NAME: LOCAL_ATOM SYNOPSIS: Local atom class INTERFACE: LOCAL_ATOM() - constructor ~LOCAL_ATOM() - destructor operator=() - assignment PARENT: ATOM_BASE HISTORY: RustanL 21-Nov-1990 Created beng 04-Oct-1991 Win32 conversion **********************************************************************/ DLL_CLASS LOCAL_ATOM : public ATOM_BASE { private: virtual ATOM W_AddAtom( const TCHAR * pch ) const; virtual APIERR W_QueryString( TCHAR * pchBuffer, UINT cbBuf ) const; public: LOCAL_ATOM( const TCHAR * pch = NULL ); ~LOCAL_ATOM(); const TCHAR * operator=( const TCHAR * pch ); }; #endif // _BLTATOM_HXX_ - end of file