Release 4.0.0-preview1-00051
[platform/core/csapi/tizenfx.git] / src / Tizen.Tapi / Tizen.Tapi / NetworkData.cs
1 /*
2  * Copyright (c) 2016 Samsung Electronics Co., Ltd All Rights Reserved
3  *
4  * Licensed under the Apache License, Version 2.0 (the License);
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an AS IS BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16
17 using System;
18 using System.Collections.Generic;
19
20 namespace Tizen.Tapi
21 {
22     /// <summary>
23     /// A class which defines network registration status.
24     /// </summary>
25     public class NetworkRegistrationStatus
26     {
27         internal NetworkServiceLevel Cs;
28         internal NetworkServiceLevel Ps;
29         internal NetworkServiceType SvcType;
30         internal bool Roaming;
31
32         internal NetworkRegistrationStatus()
33         {
34         }
35
36         /// <summary>
37         /// Circuit Switched status.
38         /// </summary>
39         /// <value>Status of circuit switched data.</value>
40         public NetworkServiceLevel CircuitStatus
41         {
42             get
43             {
44                 return Cs;
45             }
46         }
47
48         /// <summary>
49         /// Packet Switched status.
50         /// </summary>
51         /// <value>Status of packet switched data.</value>
52         public NetworkServiceLevel PacketStatus
53         {
54             get
55             {
56                 return Ps;
57             }
58         }
59
60         /// <summary>
61         /// Registration service type.
62         /// </summary>
63         /// <value>Service type represented in NetworkServiceType enum.</value>
64         public NetworkServiceType Type
65         {
66             get
67             {
68                 return SvcType;
69             }
70         }
71
72         /// <summary>
73         /// Roaming status
74         /// </summary>
75         /// <value>Boolean value to check the roaming status.</value>
76         public bool IsRoaming
77         {
78             get
79             {
80                 return Roaming;
81             }
82         }
83     }
84
85     /// <summary>
86     /// A class which defines network cell info notification.
87     /// </summary>
88     public class NetworkCellNoti
89     {
90         internal int Location;
91         internal int Id;
92
93         internal NetworkCellNoti()
94         {
95         }
96
97         /// <summary>
98         /// Location Area Code (In case of LTE network, it represents Tracking Area Code).
99         /// </summary>
100         /// <value>Location area code represented in integer.</value>
101         public int Lac
102         {
103             get
104             {
105                 return Location;
106             }
107         }
108
109         /// <summary>
110         /// Cell ID.
111         /// </summary>
112         /// <value>Cell id represented in integer.</value>
113         public int CellId
114         {
115             get
116             {
117                 return Id;
118             }
119         }
120     }
121
122     /// <summary>
123     /// A class which defines network change notification.
124     /// </summary>
125     public class NetworkChangeNoti
126     {
127         internal NetworkSystemType Type;
128         internal string NwPlmn;
129
130         internal NetworkChangeNoti()
131         {
132         }
133
134         /// <summary>
135         /// Access technology.
136         /// </summary>
137         /// <value>Access technology represented in NetworkSystemType enum.</value>
138         public NetworkSystemType Act
139         {
140             get
141             {
142                 return Type;
143             }
144         }
145
146         /// <summary>
147         /// Network PLMN.
148         /// </summary>
149         /// <value>Plmn value represented as string.</value>
150         public string Plmn
151         {
152             get
153             {
154                 return NwPlmn;
155             }
156         }
157     }
158
159     /// <summary>
160     /// A class which defines network time notification.
161     /// </summary>
162     public class NetworkTimeNoti
163     {
164         internal DateTime TimeInfo;
165         internal int WDayInfo;
166         internal int GmtOffInfo;
167         internal int DstOffInfo;
168         internal bool Dst;
169         internal string NetworkPlmn;
170
171         internal NetworkTimeNoti()
172         {
173         }
174
175         /// <summary>
176         /// Date time information.
177         /// </summary>
178         /// <value>An instance of DateTime representing date time information.</value>
179         public DateTime Time
180         {
181             get
182             {
183                 return TimeInfo;
184             }
185         }
186
187         /// <summary>
188         /// Wday information.
189         /// </summary>
190         /// <value>Wday info represented in integer.</value>
191         public int WDay
192         {
193             get
194             {
195                 return WDayInfo;
196             }
197         }
198
199         /// <summary>
200         /// GMT Off.
201         /// </summary>
202         /// <value>GMT off info represented in integer.</value>
203         public int GmtOff
204         {
205             get
206             {
207                 return GmtOffInfo;
208             }
209         }
210
211         /// <summary>
212         /// DST Off.
213         /// </summary>
214         /// <value>DST off info represented in integer.</value>
215         public int DstOff
216         {
217             get
218             {
219                 return DstOffInfo;
220             }
221         }
222
223         /// <summary>
224         /// Flag for checking if it is DST.
225         /// </summary>
226         /// <value>Boolean value to check if the time is DST or not.</value>
227         public bool IsDst
228         {
229             get
230             {
231                 return Dst;
232             }
233         }
234
235         /// <summary>
236         /// Network PLMN.
237         /// </summary>
238         /// <value>PLMN value represented in string.</value>
239         public string Plmn
240         {
241             get
242             {
243                 return NetworkPlmn;
244             }
245         }
246     }
247
248     /// <summary>
249     /// A class which defines network identity notification.
250     /// </summary>
251     public class NetworkIdentityNoti
252     {
253         internal string NwPlmn;
254         internal string NwShortName;
255         internal string NwFullName;
256
257         internal NetworkIdentityNoti()
258         {
259         }
260
261         /// <summary>
262         /// Network PLMN.
263         /// </summary>
264         /// <value>Plmn value represented in string.</value>
265         public string Plmn
266         {
267             get
268             {
269                 return NwPlmn;
270             }
271         }
272
273         /// <summary>
274         /// Short network name.
275         /// </summary>
276         /// <value>Short name of the network in string.</value>
277         public string ShortName
278         {
279             get
280             {
281                 return NwShortName;
282             }
283         }
284
285         /// <summary>
286         /// Full network name.
287         /// </summary>
288         /// <value>Full name of the network in string.</value>
289         public string FullName
290         {
291             get
292             {
293                 return NwFullName;
294             }
295         }
296     }
297
298     /// <summary>
299     /// A class which defines network VoLTE status notification.
300     /// </summary>
301     public class NetworkVolteStatus
302     {
303         internal bool NwIsRegistered;
304         internal int NwFeatureMask;
305         internal VolteNetworkType NwType;
306
307         internal NetworkVolteStatus()
308         {
309         }
310
311         /// <summary>
312         /// VoLTE status.
313         /// </summary>
314         /// <value>Boolean value to check if it is registered.</value>
315         public bool IsRegistered
316         {
317             get
318             {
319                 return NwIsRegistered;
320             }
321         }
322
323         /// <summary>
324         /// Services registered for.
325         /// </summary>
326         /// <value>Service mask represented in integer.</value>
327         public int FeatureMask
328         {
329             get
330             {
331                 return NwFeatureMask;
332             }
333         }
334
335         /// <summary>
336         /// Network on which VoLTE is registered.
337         /// </summary>
338         /// <value>Type of VoLTE network represented in VolteNetworkType enum.</value>
339         public VolteNetworkType Type
340         {
341             get
342             {
343                 return NwType;
344             }
345         }
346     }
347
348     /// <summary>
349     /// A class which defines network identity.
350     /// </summary>
351     public class NetworkIdentity
352     {
353         internal string IdName;
354         internal string SvcProviderName;
355         internal string PlmnName;
356         internal uint Id;
357         internal NetworkPlmnType PlmnNwType;
358         internal NetworkSystemType SysType;
359         internal NetworkIdentity()
360         {
361         }
362
363         /// <summary>
364         /// Network name.
365         /// </summary>
366         public string Name
367         {
368             get
369             {
370                 return IdName;
371             }
372         }
373
374         /// <summary>
375         /// Service provider name.
376         /// </summary>
377         public string ServiceProviderName
378         {
379             get
380             {
381                 return SvcProviderName;
382             }
383         }
384
385         /// <summary>
386         /// Network plmn.
387         /// </summary>
388         public string Plmn
389         {
390             get
391             {
392                 return PlmnName;
393             }
394         }
395
396         /// <summary>
397         /// Plmn Id.
398         /// </summary>
399         public uint PlmnId
400         {
401             get
402             {
403                 return Id;
404             }
405         }
406
407         /// <summary>
408         /// Plmn type.
409         /// </summary>
410         public NetworkPlmnType PlmnType
411         {
412             get
413             {
414                 return PlmnNwType;
415             }
416         }
417
418         /// <summary>
419         /// Access technology.
420         /// </summary>
421         public NetworkSystemType SystemType
422         {
423             get
424             {
425                 return SysType;
426             }
427         }
428     }
429
430     /// <summary>
431     /// A class for the network plmn list.
432     /// </summary>
433     public class NetworkPlmnList
434     {
435         internal byte NwCount;
436         internal IEnumerable<NetworkIdentity> NwList;
437
438         internal NetworkPlmnList()
439         {
440         }
441
442         /// <summary>
443         /// Network plmn count.
444         /// </summary>
445         /// <value>Count of the network plmn.</value>
446         public byte NetworkCount
447         {
448             get
449             {
450                 return NwCount;
451             }
452         }
453
454         /// <summary>
455         /// Network list.
456         /// </summary>
457         /// <value>List of NetworkIdentity.</value>
458         public IEnumerable<NetworkIdentity> NetworkList
459         {
460             get
461             {
462                 return NwList;
463             }
464         }
465     }
466
467     /// <summary>
468     /// A class which defines the preferred plmn information.
469     /// </summary>
470     public class NetworkPreferredPlmnInfo
471     {
472         internal byte idex;
473         internal string NwPlmn;
474         internal string NwName;
475         internal string SvcProvName;
476         internal NetworkSystemType SysType;
477
478         /// <summary>
479         /// Preferred plmn list index.
480         /// </summary>
481         ///<value>Index of preferred plmn list.</value>
482         public byte Index
483         {
484             get
485             {
486                 return idex;
487             }
488
489             set
490             {
491                 idex = value;
492             }
493         }
494
495         /// <summary>
496         /// Preferred plmn.
497         /// </summary>
498         /// <value>Plmn string.</value>
499         public string Plmn
500         {
501             get
502             {
503                 return NwPlmn;
504             }
505
506             set
507             {
508                 NwPlmn = value;
509             }
510         }
511
512         /// <summary>
513         /// Network name.
514         /// </summary>
515         /// <value>Name of network.</value>
516         public string NetworkName
517         {
518             get
519             {
520                 return NwName;
521             }
522
523             set
524             {
525                 NwName = value;
526             }
527         }
528
529         /// <summary>
530         /// Service provider name.
531         /// </summary>
532         /// <value>Name of service provider.</value>
533         public string ServiceProviderName
534         {
535             get
536             {
537                 return SvcProvName;
538             }
539
540             set
541             {
542                 SvcProvName = value;
543             }
544         }
545
546         /// <summary>
547         /// System type of network.
548         /// </summary>
549         /// <value>System type of network.</value>
550         public NetworkSystemType SystemType
551         {
552             get
553             {
554                 return SysType;
555             }
556
557             set
558             {
559                 SysType = value;
560             }
561         }
562     }
563
564     /// <summary>
565     /// A class containing information related to a cdma system.
566     /// </summary>
567     public class NetworkCdmaSysInfo
568     {
569         internal int Car;
570         internal uint SysId;
571         internal uint NwId;
572         internal uint BaseStnId;
573         internal int BaseStnLatitude;
574         internal int BaseStnLongitude;
575         internal uint RegZone;
576         internal uint Offset;
577         internal NetworkCdmaSysInfo()
578         {
579         }
580
581         /// <summary>
582         /// Cdma carrier.
583         /// </summary>
584         /// <value>Cdma carrier.</value>
585         public int Carrier
586         {
587             get
588             {
589                 return Car;
590             }
591         }
592
593         /// <summary>
594         /// System Id.
595         /// </summary>
596         /// <value>System Id.</value>
597         public uint SystemId
598         {
599             get
600             {
601                 return SysId;
602             }
603         }
604
605         /// <summary>
606         /// Network Id.
607         /// </summary>
608         /// <value>Id of network.</value>
609         public uint NetworkId
610         {
611             get
612             {
613                 return NwId;
614             }
615         }
616
617         /// <summary>
618         /// Base station Id.
619         /// </summary>
620         /// <value>Id of base station.</value>
621         public uint BaseStationId
622         {
623             get
624             {
625                 return BaseStnId;
626             }
627         }
628
629         /// <summary>
630         /// Latitude of the current base station.
631         /// </summary>
632         /// <value>Latitude of the current base station.</value>
633         public int BaseStationLatitude
634         {
635             get
636             {
637                 return BaseStnLatitude;
638             }
639         }
640
641         /// <summary>
642         /// Longitude of the current base station.
643         /// </summary>
644         /// <value>Longitude of the current base station.</value>
645         public int BaseStationLongitude
646         {
647             get
648             {
649                 return BaseStnLongitude;
650             }
651         }
652
653         /// <summary>
654         /// Registration zone.
655         /// </summary>
656         /// <value>Registration zone.</value>
657         public uint RegistrationZone
658         {
659             get
660             {
661                 return RegZone;
662             }
663         }
664
665         /// <summary>
666         /// Pilot offset.
667         /// </summary>
668         /// <value>Offset of pilot.</value>
669         public uint PilotOffset
670         {
671             get
672             {
673                 return Offset;
674             }
675         }
676     }
677
678     /// <summary>
679     /// A class containing information about network area.
680     /// </summary>
681     public class NetworkAreaInfo
682     {
683         internal int Code;
684         internal NetworkCdmaSysInfo Cdma;
685         internal NetworkAreaInfo()
686         {
687         }
688
689         /// <summary>
690         /// Location area code.
691         /// </summary>
692         /// <value>Area code of location.</value>
693         public int Lac
694         {
695             get
696             {
697                 return Code;
698             }
699         }
700
701         /// <summary>
702         /// Instance of NetworkCdmaSysInfo.
703         /// </summary>
704         /// <value>Instance of NetworkCdmaSysInfo.</value>
705         public NetworkCdmaSysInfo CdmaInfo
706         {
707             get
708             {
709                 return Cdma;
710             }
711         }
712     }
713
714     /// <summary>
715     /// A class containing information of serving network.
716     /// </summary>
717     public class NetworkServing
718     {
719         internal NetworkSystemType Type;
720         internal string NwPlmn;
721         internal NetworkAreaInfo Area;
722         internal NetworkServing()
723         {
724         }
725
726         /// <summary>
727         /// Access technology.
728         /// </summary>
729         /// <value>System type of network.</value>
730         public NetworkSystemType SystemType
731         {
732             get
733             {
734                 return Type;
735             }
736         }
737
738         /// <summary>
739         /// Network plmn.
740         /// </summary>
741         /// <value>Plmn of network.</value>
742         public string Plmn
743         {
744             get
745             {
746                 return NwPlmn;
747             }
748         }
749
750         /// <summary>
751         /// Area information of network.
752         /// </summary>
753         /// <value>Instance of NetworkAreaInfo.</value>
754         public NetworkAreaInfo AreaInfo
755         {
756             get
757             {
758                 return Area;
759             }
760         }
761     }
762
763     /// <summary>
764     /// A class containing information of cdma cell.
765     /// </summary>
766     public class NetworkCdmaCell
767     {
768         internal uint SysId;
769         internal uint NwId;
770         internal uint BaseStnId;
771         internal uint RefPn;
772         internal int BaseStnLatitude;
773         internal int BaseStnLongitude;
774         internal NetworkCdmaCell()
775         {
776         }
777
778         /// <summary>
779         /// System Id info.
780         /// </summary>
781         /// <value>System Id.</value>
782         public uint SystemId
783         {
784             get
785             {
786                 return SysId;
787             }
788         }
789
790         /// <summary>
791         /// Network Id.
792         /// </summary>
793         /// <value>Network Id.</value>
794         public uint NetworkId
795         {
796             get
797             {
798                 return NwId;
799             }
800         }
801
802         /// <summary>
803         /// Base station Id.
804         /// </summary>
805         /// <value>Base station id.</value>
806         public uint BaseStationId
807         {
808             get
809             {
810                 return BaseStnId;
811             }
812         }
813
814         /// <summary>
815         /// Reference pn.
816         /// </summary>
817         /// <value>Reference pn.</value>
818         public uint ReferencePn
819         {
820             get
821             {
822                 return RefPn;
823             }
824         }
825
826         /// <summary>
827         /// Latitude of the current base station.
828         /// </summary>
829         /// <value>Latitude of the current base station.</value>
830         public int BaseStationLatitude
831         {
832             get
833             {
834                 return BaseStnLatitude;
835             }
836         }
837
838         /// <summary>
839         /// Longitude of the current base station.
840         /// </summary>
841         /// <value>Longitude of the current base station.</value>
842         public int BaseStationLongitude
843         {
844             get
845             {
846                 return BaseStnLongitude;
847             }
848         }
849     }
850
851     /// <summary>
852     /// A class containing information of lte cell.
853     /// </summary>
854     public class NetworkLteCell
855     {
856         internal int Id;
857         internal int Lc;
858         internal int PId;
859         internal int Erf;
860         internal int Tc;
861         internal int Rs;
862         internal NetworkLteCell()
863         {
864         }
865
866         /// <summary>
867         /// Value of cell Id. -1 indicates that cell Id information is not present.
868         /// </summary>
869         /// <value>Cell Id.</value>
870         public int CellId
871         {
872             get
873             {
874                 return Id;
875             }
876         }
877
878         /// <summary>
879         /// Location area code. This field is ignored when CellId is not present.
880         /// </summary>
881         /// <value>Code of area.</value>
882         public int Lac
883         {
884             get
885             {
886                 return Lc;
887             }
888         }
889
890         /// <summary>
891         /// Physical cell id info.
892         /// </summary>
893         /// <value>Physical cell id.</value>
894         public int PhysicalId
895         {
896             get
897             {
898                 return PId;
899             }
900         }
901
902         /// <summary>
903         /// E-Utra absolute rf channel number.
904         /// </summary>
905         /// <value>E-Utra absolute rf channel number.</value>
906         public int Earfcn
907         {
908             get
909             {
910                 return Erf;
911             }
912         }
913
914         /// <summary>
915         /// Tracking area code.
916         /// </summary>
917         /// <value>Area code for tracking.</value>
918         public int Tac
919         {
920             get
921             {
922                 return Tc;
923             }
924         }
925
926         /// <summary>
927         /// Rssi in dBm(signed)
928         /// </summary>
929         /// <value>Rssi in dBm.</value>
930         public int Rssi
931         {
932             get
933             {
934                 return Rs;
935             }
936         }
937     }
938
939     /// <summary>
940     /// A class containing information of umts cell.
941     /// </summary>
942     public class NetworkUmtsCell
943     {
944         internal int Id;
945         internal int Lc;
946         internal int Arf;
947         internal int Ps;
948         internal int Rsc;
949         internal NetworkUmtsCell()
950         {
951         }
952
953         /// <summary>
954         /// Ucid. -1 indicates that cell Id information is not present.
955         /// </summary>
956         /// <value>RNCID + Cell ID(16 bit).</value>
957         public int CellId
958         {
959             get
960             {
961                 return Id;
962             }
963         }
964
965         /// <summary>
966         /// Location area code. This field is ignored when CellId is not present.
967         /// </summary>
968         /// <value>Code of area.</value>
969         public int Lac
970         {
971             get
972             {
973                 return Lc;
974             }
975         }
976
977         /// <summary>
978         /// Utra absolute rf channel number.
979         /// </summary>
980         /// <value>Utra absolute rf channel number.</value>
981         public int Arfcn
982         {
983             get
984             {
985                 return Arf;
986             }
987         }
988
989         /// <summary>
990         /// Primary scrambling code.
991         /// </summary>
992         /// <value>Primary scrambling code.</value>
993         public int Psc
994         {
995             get
996             {
997                 return Ps;
998             }
999         }
1000
1001         /// <summary>
1002         /// Received signal code power. Valid values are (0-96, 255).
1003         /// </summary>
1004         /// <value>Power of received signal code.</value>
1005         public int Rscp
1006         {
1007             get
1008             {
1009                 return Rsc;
1010             }
1011         }
1012
1013     }
1014
1015     /// <summary>
1016     /// A class containing information of geran cell.
1017     /// </summary>
1018     public class NetworkGeranCell
1019     {
1020         internal int Id;
1021         internal int Lc;
1022         internal int Bc;
1023         internal int Bs;
1024         internal int Rx;
1025         internal NetworkGeranCell()
1026         {
1027         }
1028
1029         /// <summary>
1030         /// Value of cell Id. -1 indicates that cell Id information is not present.
1031         /// </summary>
1032         /// <value>Cell Id.</value>
1033         public int CellId
1034         {
1035             get
1036             {
1037                 return Id;
1038             }
1039         }
1040
1041         /// <summary>
1042         /// Location area code. This field is ignored when CellId is not present.
1043         /// </summary>
1044         /// <value>Code of area.</value>
1045         public int Lac
1046         {
1047             get
1048             {
1049                 return Lc;
1050             }
1051         }
1052
1053         /// <summary>
1054         /// Broadcast control channel frequency number.
1055         /// </summary>
1056         /// <value>Broadcast control channel frequency number.</value>
1057         public int Bcch
1058         {
1059             get
1060             {
1061                 return Bc;
1062             }
1063         }
1064
1065         /// <summary>
1066         /// Base station identification code.
1067         /// </summary>
1068         /// <value>Id code of base station.</value>
1069         public int Bsic
1070         {
1071             get
1072             {
1073                 return Bs;
1074             }
1075         }
1076
1077         /// <summary>
1078         /// Received signal strength level. Valid values are (0-63, 99).
1079         /// </summary>
1080         /// <value>Strength of received signal.</value>
1081         public int Rxlev
1082         {
1083             get
1084             {
1085                 return Rx;
1086             }
1087         }
1088     }
1089
1090     /// <summary>
1091     /// A class which contains geran, umts, cdma and lte cell information.
1092     /// </summary>
1093     public class Cell
1094     {
1095         internal NetworkGeranCell Geran;
1096         internal NetworkCdmaCell Cdma;
1097         internal NetworkUmtsCell Umts;
1098         internal NetworkLteCell Lte;
1099         internal Cell()
1100         {
1101         }
1102
1103         /// <summary>
1104         /// Geran cell information.
1105         /// </summary>
1106         /// <value>Instance of NetworkGeranCell.</value>
1107         public NetworkGeranCell GeranCell
1108         {
1109             get
1110             {
1111                 return Geran;
1112             }
1113         }
1114
1115         /// <summary>
1116         /// Cdma cell information.
1117         /// </summary>
1118         /// <value>Instance of NetworkCdmaCell.</value>
1119         public NetworkCdmaCell CdmaCell
1120         {
1121             get
1122             {
1123                 return Cdma;
1124             }
1125         }
1126
1127         /// <summary>
1128         /// Umts cell information.
1129         /// </summary>
1130         /// <value>Instance of NetworkUmtsCell.</value>
1131         public NetworkUmtsCell UmtsCell
1132         {
1133             get
1134             {
1135                 return Umts;
1136             }
1137         }
1138
1139         /// <summary>
1140         /// Lte cell information.
1141         /// </summary>
1142         /// <value>Instance of NetworkLteCell.</value>
1143         public NetworkLteCell LteCell
1144         {
1145             get
1146             {
1147                 return Lte;
1148             }
1149         }
1150     }
1151
1152     /// <summary>
1153     /// A class which contains serving cell information.
1154     /// </summary>
1155     public class NetworkServingCell
1156     {
1157         internal NetworkSystemType SysType;
1158         internal int MCountryCode;
1159         internal int MNwCode;
1160         internal Cell Info;
1161         internal NetworkServingCell()
1162         {
1163         }
1164
1165         /// <summary>
1166         /// Access technology.
1167         /// </summary>
1168         /// <value>Network system type.</value>
1169         public NetworkSystemType SystemType
1170         {
1171             get
1172             {
1173                 return SysType;
1174             }
1175         }
1176
1177         /// <summary>
1178         /// Mobile country code.
1179         /// </summary>
1180         /// <value>Country code of the mobile.</value>
1181         public int MobileCountryCode
1182         {
1183             get
1184             {
1185                 return MCountryCode;
1186             }
1187         }
1188
1189         /// <summary>
1190         /// Mobile network code.
1191         /// </summary>
1192         /// <value>Network code of the mobile.</value>
1193         public int MobileNetworkCode
1194         {
1195             get
1196             {
1197                 return MNwCode;
1198             }
1199         }
1200
1201         /// <summary>
1202         /// Information of cell.
1203         /// </summary>
1204         ///<value>Instance of Cell.</value>
1205         public Cell CellInfo
1206         {
1207             get
1208             {
1209                 return Info;
1210             }
1211         }
1212     }
1213
1214     /// <summary>
1215     /// A class which contains neighboring cell information.
1216     /// </summary>
1217     public class NetworkNeighboringCell
1218     {
1219         internal NetworkServingCell ServCell;
1220         internal IEnumerable<NetworkGeranCell> GrList;
1221         internal IEnumerable<NetworkUmtsCell> UmtList;
1222         internal IEnumerable<NetworkLteCell> LtList;
1223         internal NetworkNeighboringCell()
1224         {
1225         }
1226
1227         /// <summary>
1228         /// Serving cell information.
1229         /// </summary>
1230         /// <value>Instance of NetworkServingCell.</value>
1231         public NetworkServingCell ServingCell
1232         {
1233             get
1234             {
1235                 return ServCell;
1236             }
1237         }
1238
1239         /// <summary>
1240         /// Geran cell info list.
1241         /// </summary>
1242         /// <value>List of NetworkGeranCell.</value>
1243         public IEnumerable<NetworkGeranCell> GeranList
1244         {
1245             get
1246             {
1247                 return GrList;
1248             }
1249         }
1250
1251         /// <summary>
1252         /// Umts cell info list.
1253         /// </summary>
1254         /// <value>List of NetworkUmtsCell.</value>
1255         public IEnumerable<NetworkUmtsCell> UmtsList
1256         {
1257             get
1258             {
1259                 return UmtList;
1260             }
1261         }
1262
1263         /// <summary>
1264         /// Lte cell info list.
1265         /// </summary>
1266         /// <value>List of NetworkLteCell.</value>
1267         public IEnumerable<NetworkLteCell> LteList
1268         {
1269             get
1270             {
1271                 return LtList;
1272             }
1273         }
1274     }
1275 }