summaryrefslogtreecommitdiff
path: root/gnss/gnssUmdf/FixHandler.h
blob: 6ade10a71b7e7f453f29bdefd3f5f954eebb6cd9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
/*++

Copyright (c) Microsoft Corporation.  All rights reserved.

Module Name:

    Fixhandler.h

Abstract:

    This module contains the type definitions of the fix logic of the Umdf Gnss Driver.

Environment:

    Windows User-Mode Driver Framework

--*/

#pragma once

class CFixSession;

class CFixHandler
{
public:
    NTSTATUS Initialize(_In_ WDFQUEUE Queue);

    NTSTATUS StartFix(_In_ WDFREQUEST Request, _In_ BOOL LocationServiceEnabled);
    NTSTATUS StopFix(_In_ WDFREQUEST Request);
    NTSTATUS GetFixRequest(_In_ WDFREQUEST Request);
    NTSTATUS ModifyFix(_In_ WDFREQUEST Request);
    NTSTATUS StopExistingSinglsShotFix();

private:
    // Session objects (single shot, distance tracking etc.)
    CFixSession _SingleShotSession;

    ULONG _CurrentSinglsShotSessionId = INVALID_SESSION_ID;
};