Sync from Azure to LF
[ric-plt/resource-status-manager.git] / RSM / asn1codec / inc / resource_status_request_wrapper.h
1 /*
2  *
3  * Copyright 2019 AT&T Intellectual Property
4  * Copyright 2019 Nokia
5  *
6  * Licensed under the Apache License, Version 2.0 (the "License");
7  * you may not use this file except in compliance with the License.
8  * You may obtain a copy of the License at
9  *
10  *      http://www.apache.org/licenses/LICENSE-2.0
11  *
12  * Unless required by applicable law or agreed to in writing, software
13  * distributed under the License is distributed on an "AS IS" BASIS,
14  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15  * See the License for the specific language governing permissions and
16  * limitations under the License.
17  *
18  */
19
20
21 #include <stddef.h>
22 #include <stdbool.h>
23 #include <stdint.h>
24 #include <asn1codec_utils.h>
25
26 #ifndef INC_RESOURCE_STATUS_REQUEST_WRAPPER_H
27 #define INC_RESOURCE_STATUS_REQUEST_WRAPPER_H
28
29 #ifdef __cplusplus
30 extern "C"
31 {
32 #endif
33
34 bool
35 build_pack_resource_status_request(
36                 uint8_t const* pLMN_Identity,
37         uint8_t const* eUTRANCellIdentifier,
38                 Measurement_ID_t measurement_ID, Measurement_ID_t measurement_ID2,
39                 Registration_Request_t registration_Request /*Registration_Request_start,Registration_Request_stop,Registration_Request_partial_stop, Registration_Request_add*/,
40                 uint32_t reportCharacteristics,
41                 ReportingPeriodicity_t reportingPeriodicity /*ReportingPeriodicity_one_thousand_ms,     ReportingPeriodicity_two_thousand_ms, ReportingPeriodicity_five_thousand_ms,ReportingPeriodicity_ten_thousand_ms*/,
42                 PartialSuccessIndicator_t partialSuccessIndicator /*PartialSuccessIndicator_partial_success_allowed*/,
43                 ReportingPeriodicityRSRPMR_t reportingPeriodicityRSRPMR /*ReportingPeriodicityRSRPMR_one_hundred_20_ms, ReportingPeriodicityRSRPMR_two_hundred_40_ms, ReportingPeriodicityRSRPMR_four_hundred_80_ms,ReportingPeriodicityRSRPMR_six_hundred_40_ms*/,
44                 ReportingPeriodicityCSIR_t reportingPeriodicityCSIR /*  ReportingPeriodicityCSIR_ms5, ReportingPeriodicityCSIR_ms10,ReportingPeriodicityCSIR_ms20,ReportingPeriodicityCSIR_ms40,ReportingPeriodicityCSIR_ms80*/,
45                 size_t* packed_buf_size, unsigned char* packed_buf,size_t err_buf_size, char* err_buf
46 );
47
48 bool
49 build_pack_resource_status_request_aux(
50                 uint8_t const* pLMN_Identity,
51         uint8_t const* eUTRANCellIdentifier,
52                 Measurement_ID_t measurement_ID, Measurement_ID_t measurement_ID2,
53                 Registration_Request_t registration_Request /*Registration_Request_start,Registration_Request_stop,Registration_Request_partial_stop, Registration_Request_add*/,
54                 uint32_t reportCharacteristics,
55                 ReportingPeriodicity_t reportingPeriodicity /*ReportingPeriodicity_one_thousand_ms,     ReportingPeriodicity_two_thousand_ms, ReportingPeriodicity_five_thousand_ms,ReportingPeriodicity_ten_thousand_ms*/,
56                 PartialSuccessIndicator_t partialSuccessIndicator /*PartialSuccessIndicator_partial_success_allowed*/,
57                 ReportingPeriodicityRSRPMR_t reportingPeriodicityRSRPMR /*ReportingPeriodicityRSRPMR_one_hundred_20_ms, ReportingPeriodicityRSRPMR_two_hundred_40_ms, ReportingPeriodicityRSRPMR_four_hundred_80_ms,ReportingPeriodicityRSRPMR_six_hundred_40_ms*/,
58                 ReportingPeriodicityCSIR_t reportingPeriodicityCSIR /*  ReportingPeriodicityCSIR_ms5, ReportingPeriodicityCSIR_ms10,ReportingPeriodicityCSIR_ms20,ReportingPeriodicityCSIR_ms40,ReportingPeriodicityCSIR_ms80*/,
59                 size_t* packed_buf_size, unsigned char* packed_buf,size_t err_buf_size, char* err_buf,enum asn_transfer_syntax syntax
60 );
61
62 #ifdef __cplusplus
63 }
64 #endif
65
66 #endif /* INC_RESOURCE_STATUS_REQUEST_WRAPPER_H */
67