ATL classes and structs

The Active Template Library (ATL) includes the following classes and structs. To find a particular class by category, see the ATL Class Overview.

Class / struct Description Header file
ATL_DRAWINFO Contains information used for rendering to various targets, such as a printer, metafile, or ActiveX control. atlctl.h
_AtlCreateWndData Contains class instance data in windowing code in ATL. atlbase.h
_ATL_BASE_MODULE70 Used by any project that uses ATL. atlbase.h
_ATL_COM_MODULE70 Used by COM-related code in ATL. atlbase.h
_ATL_FUNC_INFO Contains type information used to describe a method or property on a dispinterface. atlcom.h
_ATL_MODULE70 Contains data used by every ATL module. atlbase.h
_ATL_WIN_MODULE70 Used by windowing code in ATL. atlbase.h
CA2AEX This class is used by the string conversion macros CA2TEX and CT2AEX, and the typedef CA2A. atlconv.h
CA2CAEX This class is used by string conversion macros CA2CTEX and CT2CAEX, and the typedef CA2CA. atlconv.h
CA2WEX This class is used by the string conversion macros CA2TEX, CA2CTEX, CT2WEX, and CT2CWEX, and the typedef CA2W. atlconv.h
CAccessToken This class is a wrapper for an access token. atlsecurity.h
CAcl This class is a wrapper for an ACL (access-control list) structure. atlsecurity.h
CAdapt This template is used to wrap classes that redefine the address-of operator to return something other than the address of the object. atlcomcli.h
CAtlArray This class implements an array object. atlcoll.h
CAtlAutoThreadModule This class implements a thread-pooled, apartment-model COM server. atlbase.h
CAtlAutoThreadModuleT This class provides methods for implementing a thread-pooled, apartment-model COM server. atlbase.h
CAtlBaseModule This class is instantiated in every ATL project. atlcore.h
CAtlComModule This class implements a COM server module. atlbase.h
CAtlDebugInterfacesModule This class provides support for debugging interfaces. atlbase.h
CAtlDllModuleT This class represents the module for a DLL. atlbase.h
CAtlException This class defines an ATL exception. atlexcept.h
CAtlExeModuleT This class represents the module for an application. atlbase.h
CAtlFile This class provides a thin wrapper around the Windows file-handling API. atlfile.h
CAtlFileMapping This class represents a memory-mapped file, adding a cast operator to the methods of CAtlFileMappingBase. atlfile.h
CAtlFileMappingBase This class represents a memory-mapped file. atlfile.h
CAtlList This class provides methods for creating and managing a list object. atlcoll.h
CAtlMap This class provides methods for creating and managing a map object. atlcoll.h
CAtlModule This class provides methods used by several ATL module classes. atlbase.h
CAtlModuleT This class implements an ATL module. atlbase.h
CAtlPreviewCtrlImpl This class is an ATL implementation of a window that is placed on a host window provided by the Shell for Rich Preview. atlpreviewctrlimpl.h
CAtlServiceModuleT This class implements a service. atlbase.h
CAtlTemporaryFile This class provides methods for the creation and use of a temporary file. atlfile.h
CAtlTransactionManager This class provides a wrapper to Kernel Transaction Manager (KTM) functions. atltransactionmanager.h
CAtlWinModule This class provides support for ATL windowing components. atlbase.h
CAutoPtr This class represents a smart pointer object. atlbase.h
CAutoPtrArray This class provides methods useful when constructing an array of smart pointers. atlbase.h
CAutoPtrElementTraits This class provides methods, static functions, and typedefs useful when creating collections of smart pointers. atlcoll.h
CAutoPtrList This class provides methods useful when constructing a list of smart pointers. atlcoll.h
CAutoVectorPtr This class represents a smart pointer object using vector new and delete operators. atlbase.h
CAutoVectorPtrElementTraits This class provides methods, static functions, and typedefs useful when creating collections of smart pointers using vector new and delete operators. atlcoll.h
CAxDialogImpl This class implements a dialog box (modal or modeless) that hosts ActiveX controls. atlwin.h
CAxWindow This class provides methods for manipulating a window hosting an ActiveX control. atlwin.h
CAxWindow2T This class provides methods for manipulating a window that hosts an ActiveX control and also has support for hosting licensed ActiveX controls. atlwin.h
CBindStatusCallback This class implements the IBindStatusCallback interface. atlctl.h
CComAggObject This class implements IUnknown for an aggregated object. atlcom.h
CComAllocator This class provides methods for managing memory using COM memory routines. atlbase.h
CComApartment This class provides support for managing an apartment in a thread-pooled EXE module. atlbase.h
CComAutoCriticalSection This class provides methods for obtaining and releasing ownership of a critical section object. atlcore.h
CComAutoThreadModule As of ATL 7.0, CComAutoThreadModule is obsolete: see ATL Modules for more details. atlbase.h
CComBSTR This class is a wrapper for BSTRs. atlbase.h
CComCachedTearOffObject This class implements IUnknown for a tear-off interface. atlcom.h
CComClassFactory This class implements the IClassFactory interface. atlcom.h
CComClassFactory2 This class implements the IClassFactory2 interface. atlcom.h
CComClassFactoryAutoThread This class implements the IClassFactory interface and allows objects to be created in multiple apartments. atlcom.h
CComClassFactorySingleton This class derives from CComClassFactory and uses CComObjectGlobal to construct a single object. atlcom.h
CComCoClass This class provides methods for creating instances of a class and obtaining its properties. atlcom.h
CComCompositeControl This class provides the methods required to implement a composite control. atlctl.h
CComContainedObject This class implements IUnknown by delegating to the owner object's IUnknown. atlcom.h
CComControl This class provides methods for creating and managing ATL controls. atlctl.h
CComControlBase This class provides methods for creating and managing ATL controls. atlctl.h
CComCriticalSection This class provides methods for obtaining and releasing ownership of a critical section object. atlcore.h
CComCritSecLock This class provides methods for locking and unlocking a critical section object. atlbase.h
CComCurrency This class has methods and operators for creating and managing a CURRENCY object. atlcur.h
CComDynamicUnkArray This class stores an array of IUnknown pointers. atlcom.h
CComEnum This class defines a COM enumerator object based on an array. atlcom.h
CComEnumImpl This class provides the implementation for a COM enumerator interface where the items being enumerated are stored in an array. atlcom.h
CComEnumOnSTL This class defines a COM enumerator object based on a C++ Standard Library collection. atlcom.h
CComFakeCriticalSection This class provides the same methods as CComCriticalSection but doesn't provide a critical section. atlcore.h
CComGITPtr This class provides methods for dealing with interface pointers and the global interface table (GIT). atlbase.h
CComHeap This class implements IAtlMemMgr using the COM memory allocation functions. ATLComMem.h
CComHeapPtr A smart pointer class for managing heap pointers. atlbase.h
CComModule As of ATL 7.0, CComModule is obsolete: see ATL Modules for more details. atlbase.h
CComMultiThreadModel This class provides thread-safe methods for incrementing and decrementing the value of a variable. atlbase.h
CComMultiThreadModelNoCS This class provides thread-safe methods for incrementing and decrementing the value of a variable, without critical section locking or unlocking functionality. atlbase.h
CComObject This class implements IUnknown for a nonaggregated object. atlcom.h
CComObjectGlobal This class manages a reference count on the module containing your Base object. atlcom.h
CComObjectNoLock This class implements IUnknown for a nonaggregated object, but doesn't increment the module lock count in the constructor. atlcom.h
CComObjectRoot This typedef of CComObjectRootEx is templatized on the default threading model of the server. atlcom.h
CComObjectRootEx This class provides methods to handle object reference count management for both nonaggregated and aggregated objects. atlcom.h
CComObjectStack This class creates a temporary COM object and provides it with a skeletal implementation of IUnknown. atlcom.h
CComPolyObject This class implements IUnknown for an aggregated or nonaggregated object. atlcom.h
CComPtr A smart pointer class for managing COM interface pointers. atlcomcli.h
CComPtrBase This class provides a basis for smart pointer classes using COM-based memory routines. atlcomcli.h
CComQIPtr A smart pointer class for managing COM interface pointers. atlcomcli.h
CComQIPtrElementTraits This class provides methods, static functions, and typedefs useful when creating collections of COM interface pointers. atlcoll.h
CComSafeArray This class is a wrapper for the SAFEARRAY Data Type structure. atlsafe.h
CComSafeArrayBound This class is a wrapper for a SAFEARRAYBOUND structure. atlsafe.h
CComSimpleThreadAllocator This class manages thread selection for the class CComAutoThreadModule. atlbase.h
CComSingleThreadModel This class provides methods for incrementing and decrementing the value of a variable. atlbase.h
CComTearOffObject This class implements a tear-off interface. atlcom.h
CComUnkArray This class stores IUnknown pointers and is designed to be used as a parameter to the IConnectionPointImpl template class. atlcom.h
CComVariant This class wraps the VARIANT type, providing a member indicating the type of data stored. atlcomcli.h
CContainedWindowT This class implements a window contained within another object. atlwin.h
CCRTAllocator This class provides methods for managing memory using CRT memory routines. atlcore.h
CCRTHeap This class implements IAtlMemMgr using the CRT heap functions. atlmem.h
CDacl This class is a wrapper for a DACL (discretionary access-control list) structure. atlsecurity.h
CDebugReportHook Class Use this class to send debug reports to a named pipe. atlutil.h
CDefaultCharTraits This class provides two static functions for converting characters between uppercase and lowercase. atlcoll.h
CDefaultCompareTraits This class provides default element comparison functions. atlcoll.h
CDefaultElementTraits This class provides default methods and functions for a collection class. atlcoll.h
CDefaultHashTraits This class provides a static function for calculating hash values. atlcoll.h
CDialogImpl This class provides methods for creating a modal or modeless dialog box. atlwin.h
CDynamicChain This class provides methods supporting the dynamic chaining of message maps. atlwin.h
CElementTraits This class is used by collection classes to provide methods and functions for moving, copying, comparison, and hashing operations. atlcoll.h
CElementTraitsBase This class provides default copy and move methods for a collection class. atlcoll.h
CFirePropNotifyEvent This class provides methods for notifying the container's sink regarding control property changes. atlctl.h
CGlobalHeap This class implements IAtlMemMgr using the Win32 global heap functions. atlmem.h
CHandle This class provides methods for creating and using a handle object. atlbase.h
CHeapPtr A smart pointer class for managing heap pointers. atlcore.h
CHeapPtrBase This class forms the basis for several smart heap pointer classes. atlcore.h
CHeapPtrElementTraits Class This class provides methods, static functions, and typedefs useful when creating collections of heap pointers. atlcoll.h
CHeapPtrList This class provides methods useful when constructing a list of heap pointers. atlcoll.h
CImage Provides enhanced bitmap support, including the ability to load and save images in JPEG, GIF, BMP, and Portable Network Graphics (PNG) formats. atlimage.h
CInterfaceArray This class provides methods useful when constructing an array of COM interface pointers. atlcoll.h
CInterfaceList This class provides methods useful when constructing a list of COM interface pointers. atlcoll.h
CLocalHeap This class implements IAtlMemMgr using the Win32 local heap functions. atlmem.h
CMessageMap This class allows an object's message maps to be accessed by another object. atlwin.h
CNonStatelessWorker Class Receives requests from a thread pool and passes them on to a worker object that is created and destroyed on each request. atlutil.h
CNoWorkerThread Class Use this class as the argument for the MonitorClass template parameter cache classes if you want to disable dynamic cache maintenance. atlutil.h
CPathT Class This class represents a path. atlpath.h
CPrimitiveElementTraits This class provides default methods and functions for a collection class composed of primitive data types. atlcoll.h
CPrivateObjectSecurityDesc This class represents a private object security descriptor object. atlsecurity.h
CRBMap This class represents a mapping structure, using a Red-Black binary tree. atlcoll.h
CRBMultiMap This class represents a mapping structure that allows each key to be associated with more than one value, using a Red-Black binary tree. atlcoll.h
CRBTree This class provides methods for creating and utilizing a Red-Black tree. atlcoll.h
CRegKey This class provides methods for manipulating entries in the system registry. atlbase.h
CRTThreadTraits This class provides the creation function for a CRT thread. Use this class if the thread will use CRT functions. atlbase.h
CSacl This class is a wrapper for a SACL (system access-control list) structure. atlsecurity.h
CSecurityAttributes This class is a thin wrapper for the SECURITY_ATTRIBUTES structure. atlsecurity.h
CSecurityDesc This class is a wrapper for the SECURITY_DESCRIPTOR structure. atlsecurity.h
CSid This class is a wrapper for a SID (security identifier) structure. atlsecurity.h
CSimpleArray This class provides methods for managing a simple array. atlsimpcoll.h
CSimpleArrayEqualHelper This class is a helper for the CSimpleArray class. atlsimpcoll.h
CSimpleArrayEqualHelperFalse This class is a helper for the CSimpleArray class. atlsimpcoll.h
CSimpleDialog This class implements a basic modal dialog box. atlwin.h
CSimpleMap This class provides support for a simple mapping array. atlsimpcoll.h
CSimpleMapEqualHelper This class is a helper for the CSimpleMap class. atlsimpcoll.h
CSimpleMapEqualHelperFalse This class is a helper for the CSimpleMap class. atlsimpcoll.h
CSnapInItemImpl This class provides methods for implementing a snap-in node object. atlsnap.h
CSnapInPropertyPageImpl This class provides methods for implementing a snap-in property page object. atlsnap.h
CStockPropImpl This class provides methods for supporting stock property values. atlctl.h
CStringElementTraits This class provides static functions used by collection classes storing CString objects. cstringt.h
CStringElementTraitsI This class provides static functions related to strings stored in collection class objects. It's similar to CStringElementTraits, but performs case-insensitive comparisons. atlcoll.h
CStringRefElementTraits This class provides static functions related to strings stored in collection class objects. The string objects are dealt with as references. atlcoll.h
CThreadPool Class This class provides a pool of worker threads that process a queue of work items. atlutil.h
CTokenGroups This class is a wrapper for the TOKEN_GROUPS structure. atlsecurity.h
CTokenPrivileges This class is a wrapper for the TOKEN_PRIVILEGES structure. atlsecurity.h
CUrl Class This class represents a URL. It allows you to manipulate each element of the URL independently of the others whether parsing an existing URL string or building a string from scratch. atlutil.h
CW2AEX This class is used by the string conversion macros CT2AEX, CW2TEX, CW2CTEX, and CT2CAEX, and the typedef CW2A. atlconv.h
CW2CWEX This class is used by the string conversion macros CW2CTEX and CT2CWEX, and the typedef CW2CW. atlconv.h
CW2WEX This class is used by the string conversion macros CW2TEX and CT2WEX, and the typedef CW2W. atlconv.h
CWin32Heap This class implements IAtlMemMgr using the Win32 heap allocation functions. atlmem.h
CWindow This class provides methods for manipulating a window. atlwin.h
CWindowImpl This class provides methods for creating or subclassing a window. atlwin.h
CWinTraits This class provides a method for standardizing the styles used when creating a window object. atlwin.h
CWinTraitsOR This class provides a method for standardizing the styles used when creating a window object. atlwin.h
CWndClassInfo This class provides methods for registering information for a window class. atlwin.h
CWorkerThread Class This class creates a worker thread or uses an existing one, waits on one or more kernel object handles, and executes a specified client function when one of the handles is signaled. atlutil.h
IAtlAutoThreadModule This class represents an interface to a CreateInstance method. atlbase.h
IAtlMemMgr This class represents the interface to a memory manager. atlmem.h
IAxWinAmbientDispatch This interface provides methods for specifying characteristics of the hosted control or container. atlbase.h, ATLIFace.h
IAxWinAmbientDispatchEx This interface implements supplemental ambient properties for a hosted control. atlbase.h, ATLIFace.h
IAxWinHostWindow This interface provides methods for manipulating a control and its host object. atlbase.h, ATLIFace.h
IAxWinHostWindowLic This interface provides methods for manipulating a licensed control and its host object. atlbase.h, ATLIFace.h
ICollectionOnSTLImpl This class provides methods used by a collection class. atlcom.h
IConnectionPointContainerImpl This class implements a connection point container to manage a collection of IConnectionPointImpl objects. atlcom.h
IConnectionPointImpl This class implements a connection point. atlcom.h
IDataObjectImpl This class provides methods for supporting Uniform Data Transfer and managing connections. atlctl.h
IDispatchImpl This class provides a default implementation for the IDispatch portion of a dual interface. atlcom.h
IDispEventImpl This class provides implementations of the IDispatch methods. atlcom.h
IDispEventSimpleImpl This class provides implementations of the IDispatch methods, without getting type information from a type library. atlcom.h
IDocHostUIHandlerDispatch An interface to the Microsoft HTML parsing and rendering engine. atlbase.h, ATLIFace.h
IEnumOnSTLImpl This class defines an enumerator interface based on a C++ Standard Library collection. atlcom.h
IObjectSafetyImpl This class provides a default implementation of the IObjectSafety interface to allow a client to retrieve and set an object's safety levels. atlctl.h
IObjectWithSiteImpl This class provides methods allowing an object to communicate with its site. atlcom.h
IOleControlImpl This class provides a default implementation of the IOleControl interface and implements IUnknown. atlctl.h
IOleInPlaceActiveObjectImpl This class provides methods for assisting communication between an in-place control and its container. atlctl.h
IOleInPlaceObjectWindowlessImpl This class implements IUnknown and provides methods that enable a windowless control to receive window messages and to participate in drag-and-drop operations. atlctl.h
IOleObjectImpl This class implements IUnknown and is the principal interface through which a container communicates with a control. atlctl.h
IPerPropertyBrowsingImpl This class implements IUnknown and allows a client to access the information in an object's property pages. atlctl.h
IPersistPropertyBagImpl This class implements IUnknown and allows an object to save its properties to a client-supplied property bag. atlcom.h
IPersistStorageImpl This class implements the IPersistStorage interface. atlcom.h
IPersistStreamInitImpl This class implements IUnknown and provides a default implementation of the IPersistStreamInit interface. atlcom.h
IPointerInactiveImpl This class implements IUnknown and the IPointerInactive interface methods. atlctl.h
IPropertyNotifySinkCP This class exposes the IPropertyNotifySink interface as an outgoing interface on a connectable object. atlctl.h
IPropertyPage2Impl This class implements IUnknown and inherits the default implementation of IPropertyPageImpl. atlctl.h
IPropertyPageImpl This class implements IUnknown and provides a default implementation of the IPropertyPage interface. atlctl.h
IProvideClassInfo2Impl This class provides a default implementation of the IProvideClassInfo and IProvideClassInfo2 methods. atlcom.h
IQuickActivateImpl This class combines containers' control initialization into a single call. atlctl.h
IRunnableObjectImpl This class implements IUnknown and provides a default implementation of the IRunnableObject interface. atlctl.h
IServiceProviderImpl This class provides a default implementation of the IServiceProvider interface. atlcom.h
ISpecifyPropertyPagesImpl This class implements IUnknown and provides a default implementation of the ISpecifyPropertyPages interface. atlcom.h
ISupportErrorInfoImpl This class provides a default implementation of the ISupportErrorInfo Interface interface and can be used when only a single interface generates errors on an object. atlcom.h
IThreadPoolConfig Interface This interface provides methods for configuring a thread pool. atlutil.h
IViewObjectExImpl This class implements IUnknown and provides default implementations of the IViewObject, IViewObject2, and IViewObjectEx interfaces. atlctl.h
IWorkerThreadClient Interface IWorkerThreadClient is the interface implemented by clients of the CWorkerThread class. atlutil.h
_U_MENUorID This class provides wrappers for CreateWindow and CreateWindowEx. atlwin.h
_U_RECT This argument adapter class allows either RECT pointers or references to be passed to a function that is implemented in terms of pointers. atlwin.h
_U_STRINGorID This argument adapter class allows either resource names (LPCTSTRs) or resource IDs (UINTs) to be passed to a function without requiring the caller to convert the ID to a string using the MAKEINTRESOURCE macro. atlwin.h
Win32ThreadTraits This class provides the creation function for a Windows thread. Use this class if the thread won't use CRT functions. atlbase.h

See also

ATL COM Desktop Components
Functions
Global Variables
Typedefs
Class Overview