Leaked source code of windows server 2003
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
//---------------------------------------------------------------------------
//
// Module: cn.h
//
// Description: connect node classes
//
//
//@@BEGIN_MSINTERNAL
// Development Team:
// Mike McLaughlin
//
// History: Date Author Comment
//
//@@END_MSINTERNAL
//---------------------------------------------------------------------------
//
// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY
// KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
// IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR
// PURPOSE.
//
// Copyright (c) 1996-1999 Microsoft Corporation. All Rights Reserved.
//
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
// Constants and Macros
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
// Class
//---------------------------------------------------------------------------
typedef class CConnectNode : public CListMultiItem { friend class CConnectInfo; private: CConnectNode( PCONNECT_NODE pConnectNodeNext );
~CConnectNode( );
public: static NTSTATUS Create( PCONNECT_NODE *ppConnectNode, PLOGICAL_FILTER_NODE pLogicalFilterNode, PCONNECT_NODE pConnectNodeNext, PGRAPH_PIN_INFO pGraphPinInfo, PPIN_NODE pPinNode1, PPIN_NODE pPinNode2, ULONG ulFlagsCurrent, PGRAPH_NODE pGraphNode );
ENUMFUNC Destroy( ) { if(this != NULL) { Assert(this); ASSERT(cReference > 0);
if(--cReference == 0) { delete this; } } return(STATUS_CONTINUE); };
VOID AddRef( ) { if(this != NULL) { Assert(this); ++cReference; } };
VOID AddPinInstance( ) { Assert(this); pConnectInfo->AddPinInstance(); };
VOID RemovePinInstance( ) { Assert(this); pConnectInfo->RemovePinInstance(); };
BOOL IsPinInstances( ) { Assert(this); return(pConnectInfo->IsPinInstances()); };
BOOL IsTopDown( ) { Assert(this); return(pConnectInfo->IsTopDown()); };
BOOL IsLimitFormat( ) { Assert(this); return(pConnectInfo->IsLimitFormat()); };
BOOL IsReuseFilterInstance( ) { Assert(this); return(pConnectInfo->IsReuseFilterInstance()); };
BOOL IsPinInstanceReserved( ) { Assert(this); return(pConnectInfo->IsPinInstanceReserved()); };
PCONNECT_NODE GetNextConnectNode( ) { Assert(this); return(pConnectNodeNext); };
PCONNECT_NODE_INSTANCE GetConnectNodeInstance( ) { Assert(this); return(pConnectInfo->pConnectNodeInstance); };
VOID SetConnectNodeInstance( PCONNECT_NODE_INSTANCE pConnectNodeInstance ) { Assert(this); pConnectInfo->pConnectNodeInstance = pConnectNodeInstance; };
PCONNECT_INFO GetConnectInfo( ) { return(this == NULL ? NULL : this->pConnectInfo); };
private: LONG cReference; PCONNECT_INFO pConnectInfo; PCONNECT_NODE pConnectNodeNext; public: PPIN_NODE pPinNodeSource; PPIN_NODE pPinNodeSink; DefineSignature(0x20204e43); // CN
} CONNECT_NODE, *PCONNECT_NODE;
//---------------------------------------------------------------------------
|