CORE.H
/*++ 
 
Copyright (c) 1996 Microsoft Corporation 
 
Module Name: 
 
    Core.h 
 
Abstract: 
 
    Core ADS Obect 
     
Author: 
 
Environment: 
 
    User mode 
 
Revision History : 
 
--*/ 
#ifndef _CORE_H_ 
#define _CORE_H_ 
 
class CCoreADsObject 
{ 
 
public: 
 
    CCoreADsObject::CCoreADsObject(); 
 
    CCoreADsObject::~CCoreADsObject(); 
 
    HRESULT 
    get_CoreName(BSTR * retval); 
 
    HRESULT 
    get_CoreADsPath(BSTR * retval); 
 
    HRESULT 
    get_CoreParent(BSTR * retval); 
 
    HRESULT 
    get_CoreSchema(BSTR * retval); 
 
    HRESULT 
    get_CoreADsClass(BSTR * retval); 
 
 
    HRESULT 
    get_CoreGUID(BSTR * retval); 
 
 
    DWORD 
    CCoreADsObject::GetObjectState() 
    { 
        return(_dwObjectState); 
    } 
 
 
    void 
    CCoreADsObject::SetObjectState(DWORD dwObjectState) 
    { 
        _dwObjectState = dwObjectState; 
    } 
 
 
    HRESULT 
    InitializeCoreObject( 
        BSTR Parent, 
        BSTR Name, 
        BSTR ClassName, 
        BSTR Schema, 
        REFCLSID rclsid, 
        DWORD   dwObjectState 
        ); 
 
    STDMETHOD(GetInfo)(THIS_ BOOL fExplicit); 
 
 
 
protected: 
 
    DWORD       _dwObjectState; 
 
    BSTR        _Name; 
    BSTR        _ADsPath; 
    BSTR        _Parent; 
    BSTR        _ADsClass; 
    BSTR        _ADsGuid; 
    BSTR        _Schema; 
 
}; 
 
 
#define     ADS_OBJECT_BOUND              1 
#define     ADS_OBJECT_UNBOUND            2 
 
#endif