1/*
2 * spectrumMngmntMgr.h
3 *
4 * Copyright(c) 1998 - 2009 Texas Instruments. All rights reserved.
5 * All rights reserved.
6 *
7 * Redistribution and use in source and binary forms, with or without
8 * modification, are permitted provided that the following conditions
9 * are met:
10 *
11 *  * Redistributions of source code must retain the above copyright
12 *    notice, this list of conditions and the following disclaimer.
13 *  * Redistributions in binary form must reproduce the above copyright
14 *    notice, this list of conditions and the following disclaimer in
15 *    the documentation and/or other materials provided with the
16 *    distribution.
17 *  * Neither the name Texas Instruments nor the names of its
18 *    contributors may be used to endorse or promote products derived
19 *    from this software without specific prior written permission.
20 *
21 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
22 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
23 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
24 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
25 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
26 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
27 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
28 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
29 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
30 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
31 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32 */
33
34/** \file spectrumMngmntMgr.h
35 *  \brief dot11h spectrum Management Meneger module interface header file
36 *
37 *  \see spectrumMngmntMgr.c
38 */
39
40/***************************************************************************/
41/*																			*/
42/*	  MODULE:	spectrumMngmntMgr.h											*/
43/*    PURPOSE:	dot11h spectrum Management Meneger module interface         */
44/*              header file                                        			*/
45/*																			*/
46/***************************************************************************/
47#ifndef __SPECTRUMMNGMNTMGR_H__
48#define __SPECTRUMMNGMNTMGR_H__
49
50#include "paramOut.h"
51#include "measurementMgr.h"
52#include "requestHandler.h"
53
54
55
56TI_STATUS measurementMgr_receiveQuietIE(TI_HANDLE hMeasurementMgr,
57								  TI_UINT8		quietCount,
58								  TI_UINT8		quietPeriod,
59								  TI_UINT16	quietDuration,
60								  TI_UINT16	quietOffset);
61
62
63TI_STATUS measurementMgr_receiveTPCRequest(TI_HANDLE hMeasurementMgr,
64										TI_UINT8		dataLen,
65										TI_UINT8		*pData);
66
67TI_STATUS measurementMgr_dot11hParseFrameReq(TI_HANDLE hMeasurementMgr,
68                                           TI_UINT8 *pData, TI_INT32 dataLen,
69                                           TMeasurementFrameRequest *frameReq);
70
71TI_STATUS measurementMgr_dot11hParseRequestIEHdr(TI_UINT8 *pData, TI_UINT16 *reqestHdrLen,
72                                               TI_UINT16 *measurementToken);
73
74TI_BOOL      measurementMgr_dot11hIsTypeValid(TI_HANDLE hMeasurementMgr,
75                                              EMeasurementType type,
76                                              EMeasurementScanMode scanMode);
77
78TI_STATUS measurementMgr_dot11hBuildReport(TI_HANDLE hMeasurementMgr, MeasurementRequest_t request, TMeasurementTypeReply * reply);
79
80TI_STATUS measurementMgr_dot11hSendReportAndCleanObject(TI_HANDLE hMeasurementMgr);
81
82TI_STATUS measurementMgr_dot11hBuildRejectReport(TI_HANDLE hMeasurementMgr,
83											 MeasurementRequest_t *pRequestArr[],
84											 TI_UINT8		numOfRequestsInParallel,
85											 EMeasurementRejectReason	rejectReason);
86
87
88/* The following function uses features from the old Measurement module. */
89/* It will have to be adapted to using the new Measurement Manager. */
90#if 0
91
92TI_STATUS measurementMgr_getBasicMeasurementParam(TI_HANDLE hMeasurementMgr,
93										  acxStatisitcs_t*	pAcxStatisitics,
94										  mediumOccupancy_t* pMediumOccupancy);
95#endif /* 0 */
96
97
98
99#endif /* __SPECTRUMMNGMNTMGR_H__ */
100