1 /*++
2 
3 Copyright (c) Microsoft. All rights reserved.
4 
5 Module Name:
6 
7     FxRelatedDevice.cpp
8 
9 Abstract:
10 
11     This module implements the FxRelatedDevice class which is used in usage
12     notification propagation
13 
14 Author:
15 
16 
17 
18 Environment:
19 
20     Kernel mode only
21 
22 Revision History:
23 
24 --*/
25 
26 #include "fxsupportpch.hpp"
27 
28 FxRelatedDevice::FxRelatedDevice(
29     __in PDEVICE_OBJECT DeviceObject,
30     __in PFX_DRIVER_GLOBALS Globals
31     ) : FxObject(FX_TYPE_RELATED_DEVICE, 0, Globals),
32         m_DeviceObject(DeviceObject),
33         m_State(RelatedDeviceStateNeedsReportPresent)
34 {
35     m_TransactionedEntry.SetTransactionedObject(this);
36     ObReferenceObject(m_DeviceObject);
37 }
38 
39 FxRelatedDevice::~FxRelatedDevice(
40     VOID
41     )
42 {
43     ObDereferenceObject(m_DeviceObject);
44 }
45