00001 /****************************************************************************** 00002 * Copyright (c) 1999-2008 ACCESS CO., LTD. All rights reserved. 00003 * Copyright (c) 2006 PalmSource, Inc (an ACCESS company). All rights reserved. 00004 *****************************************************************************/ 00012 #ifndef ALP_MOBILE_CONTEXT_H_ 00013 #define ALP_MOBILE_CONTEXT_H_ 00014 00015 00027 /****************************************************************************** 00028 * Includes 00029 *****************************************************************************/ 00030 00031 #include <alp/mobile_services.h> 00032 #include <alp/mobile_call.h> 00033 #include <alp/mobile_operator.h> 00034 #include <alp/mobile_line.h> 00035 00036 #ifdef __cplusplus 00037 extern "C" { 00038 #endif // __cplusplus 00039 00040 00041 /****************************************************************************** 00042 * Defines 00043 *****************************************************************************/ 00044 00045 #define ALP_MBL_CONTEXT_NOTIFICATION_STATUS_CHANGE ((AlpMblNotificationId) 1) 00046 #define ALP_MBL_CONTEXT_NOTIFICATION_NEW_CALL ((AlpMblNotificationId) 2) 00047 #define ALP_MBL_CONTEXT_NETWORK_ID_CHANGE ((AlpMblNotificationId) 3) 00048 #define ALP_MBL_CONTEXT_EMERGENCY_NUMBERS_AVAILABLE ((AlpMblNotificationId) 4) 00049 #define ALP_MBL_CONTEXT_NOTIFICATION_SUBSCRIBER_ID_AVAILABLE ((AlpMblNotificationId) 5) 00050 #define ALP_MBL_CONTEXT_NOTIFICATION_HOME_OPERATOR_ID_AVAILABLE ((AlpMblNotificationId) 6) 00051 #define ALP_MBL_CONTEXT_NOTIFICATION_VOICE_MAIL_INDICATOR_CHANGE ((AlpMblNotificationId) 7) 00052 #define ALP_MBL_CONTEXT_NOTIFICATION_MISSED_CALL_COUNT_CHANGE ((AlpMblNotificationId) 8) 00053 #define ALP_MBL_CONTEXT_NOTIFICATION_OWN_NUMBERS_AVAILABLE ((AlpMblNotificationId) 9) 00054 #define ALP_MBL_CONTEXT_NOTIFICATION_CLIR_STATUS_CHANGE ((AlpMblNotificationId) 10) 00055 #define ALP_MBL_CONTEXT_NOTIFICATION_COST_CHANGE ((AlpMblNotificationId) 11) 00056 #define ALP_MBL_CONTEXT_NOTIFICATION_COST_LIMIT_CHANGE ((AlpMblNotificationId) 12) 00057 #define ALP_MBL_CONTEXT_NOTIFICATION_CURRENCY_CHANGE ((AlpMblNotificationId) 13) 00058 #define ALP_MBL_CONTEXT_NOTIFICATION_UNIT_PRICE_CHANGE ((AlpMblNotificationId) 14) 00059 #define ALP_MBL_CONTEXT_NOTIFICATION_AVAILABLE_LINES_CHANGE ((AlpMblNotificationId) 15) 00060 #define ALP_MBL_CONTEXT_NOTIFICATION_CURRENT_LINE_CHANGE ((AlpMblNotificationId) 16) 00061 #define ALP_MBL_CONTEXT_NOTIFICATION_RESTRICTION_LIST_CHANGE ((AlpMblNotificationId) 17) 00062 #define ALP_MBL_CONTEXT_NOTIFICATION_RESTRICTION_LIST_STATUS_CHANGE ((AlpMblNotificationId) 18) 00063 #define ALP_MBL_CONTEXT_NOTIFICATION_CALL_LIST_UPDATE ((AlpMblNotificationId) 19) 00064 00065 #define ALP_MBL_CONTEXT_INVALID_CONTEXT_ID ((AlpMblContextId) 0) 00066 00067 #define ALP_MBL_CONTEXT_STATUS_UNKNOWN ((AlpMblContextStatus) 0) 00068 #define ALP_MBL_CONTEXT_STATUS_CONNECTED ((AlpMblContextStatus) 1) 00069 #define ALP_MBL_CONTEXT_STATUS_DISCONNECTED ((AlpMblContextStatus) 2) 00070 #define ALP_MBL_CONTEXT_STATUS_CONNECTING ((AlpMblContextStatus) 3) 00071 #define ALP_MBL_CONTEXT_STATUS_DISCONNECTING ((AlpMblContextStatus) 4) 00072 00073 #define ALP_MBL_CONTEXT_ANSWER_MODE_KEY_OR_BUTTON ((AlpMblContextAnswerMode) 0) 00074 #define ALP_MBL_CONTEXT_ANSWER_MODE_ANY_KEY ((AlpMblContextAnswerMode) 1) 00075 #define ALP_MBL_CONTEXT_ANSWER_MODE_AUTOMATIC ((AlpMblContextAnswerMode) 2) 00076 00077 #define ALP_MBL_CONTEXT_CALL_COUNTER_VOICE_IN ((AlpMblContextCallCounterType) 0x01) 00078 #define ALP_MBL_CONTEXT_CALL_COUNTER_VOICE_OUT ((AlpMblContextCallCounterType) 0x02) 00079 #define ALP_MBL_CONTEXT_CALL_COUNTER_VOICE_ALL (ALP_MBL_CONTEXT_CALL_COUNTER_VOICE_IN | ALP_MBL_CONTEXT_CALL_COUNTER_VOICE_OUT) 00080 #define ALP_MBL_CONTEXT_CALL_COUNTER_DATA_CS ((AlpMblContextCallCounterType) 0x04) 00081 #define ALP_MBL_CONTEXT_CALL_COUNTER_DATA_PS_IN ((AlpMblContextCallCounterType) 0x08) 00082 #define ALP_MBL_CONTEXT_CALL_COUNTER_DATA_PS_OUT ((AlpMblContextCallCounterType) 0x10) 00083 #define ALP_MBL_CONTEXT_CALL_COUNTER_DATA_PS_ALL (ALP_MBL_CONTEXT_CALL_COUNTER_DATA_PS_IN | ALP_MBL_CONTEXT_CALL_COUNTER_DATA_PS_OUT) 00084 #define ALP_MBL_CONTEXT_CALL_COUNTER_DATA_ALL (ALP_MBL_CONTEXT_CALL_COUNTER_DATA_CS | ALP_MBL_CONTEXT_CALL_COUNTER_DATA_PS_ALL) 00085 #define ALP_MBL_CONTEXT_CALL_COUNTER_ALL (ALP_MBL_CONTEXT_CALL_COUNTER_VOICE_ALL | ALP_MBL_CONTEXT_CALL_COUNTER_DATA_ALL) 00086 #define ALP_MBL_CONTEXT_CALL_COUNTER_VIDEO_IN ((AlpMblContextCallCounterType) 0x20) 00087 #define ALP_MBL_CONTEXT_CALL_COUNTER_VIDEO_OUT ((AlpMblContextCallCounterType) 0x40) 00088 #define ALP_MBL_CONTEXT_CALL_COUNTER_VIDEO_ALL (ALP_MBL_CONTEXT_CALL_COUNTER_VIDEO_IN | ALP_MBL_CONTEXT_CALL_COUNTER_VIDEO_OUT) 00089 00090 // possible adjustment of the CLIR service 00091 #define ALP_MBL_CONTEXT_CLIR_ACCORDING_SUBSCRIPTION 0 00092 #define ALP_MBL_CONTEXT_CLIR_INVOCATION 1 00093 #define ALP_MBL_CONTEXT_CLIR_SUPPRESSION 2 00094 00095 00096 // CLIR service status 00097 #define ALP_MBL_CONTEXT_CLIR_STATUS_NOT_PROVISIONED 0 00098 #define ALP_MBL_CONTEXT_CLIR_STATUS_PRESENTATION_PERMANENTLY_RESTRICTED 1 00099 #define ALP_MBL_CONTEXT_CLIR_STATUS_UNKNOWN 2 00100 #define ALP_MBL_CONTEXT_CLIR_STATUS_PRESENTATION_TEMPORARILY_RESTRICTED 3 00101 #define ALP_MBL_CONTEXT_CLIR_STATUS_PRESENTATION_TEMPORARILY_ALLOWED 4 00102 00103 // Possible restriction list 00104 #define ALP_MBL_CONTEXT_WHITE_LIST 0 00105 #define ALP_MBL_CONTEXT_BLACK_LIST 1 00106 #define ALP_MBL_CONTEXT_FIX_DIAL_LIST 2 00107 #define ALP_MBL_CONTEXT_LIST_COUNT (ALP_MBL_CONTEXT_FIX_DIAL_LIST + 1) 00108 00109 // Possible action with restriction list 00110 #define ALP_MBL_CONTEXT_RESTRICTION_LIST_CONTACT_ADDED 0 00111 #define ALP_MBL_CONTEXT_RESTRICTION_LIST_CONTACT_REMOVED 1 00112 #define ALP_MBL_CONTEXT_RESTRICTION_LIST_CONTACT_UPDATED 2 00113 #define ALP_MBL_CONTEXT_RESTRICTION_LIST_CONTACT_RETRIEVED 3 00114 00115 // Possible status of the restriction list 00116 #define ALP_MBL_CONTEXT_RESTRICTION_LIST_DISABLE 0 00117 #define ALP_MBL_CONTEXT_RESTRICTION_LIST_ENABLE 1 00118 #define ALP_MBL_CONTEXT_RESTRICTION_LIST_NOT_SUPPORTED 2 00119 00120 // Possible facility of the restriction list 00121 #define ALP_MBL_CONTEXT_RESTRICTION_LIST_FACILITY_ADDRESS_SIZE 0 00122 #define ALP_MBL_CONTEXT_RESTRICTION_LIST_FACILITY_NAME_SIZE 1 00123 00124 // Possible restricted contact informations 00125 #define ALP_MBL_CONTEXT_RESTRICTED_CONTACT_BY_ADDRESS 0 00126 00127 00128 /****************************************************************************** 00129 * Typedef 00130 *****************************************************************************/ 00131 00132 typedef unsigned char AlpMblContextStatus; 00133 typedef char AlpMblContextDescription[32]; 00134 typedef char AlpMblContextSubscriberId[32]; 00135 typedef unsigned char AlpMblContextAnswerMode; 00136 typedef unsigned char AlpMblContextCallCounterType; 00137 typedef unsigned char AlpMblContextCallerIdRestrictionStatus; 00138 typedef unsigned char AlpMblContextCallerIdRestrictionAdjustment; 00139 typedef uint16_t AlpMblContextRestrictionList; 00140 typedef uint16_t AlpMblContextRestrictionListAction; 00141 typedef uint16_t AlpMblContextRestrictionListStatus; 00142 typedef char AlpMblContextRestrictedContactName[128]; 00143 typedef AlpMblAddress AlpMblContextRestrictedContactAddress; 00144 typedef int32_t AlpMblContextRestrictedContactIndex; 00145 typedef int32_t AlpMblContextRestrictedContactType; 00146 00147 00148 typedef struct _AlpMblContextList AlpMblContextList; 00149 struct _AlpMblContextList 00150 { 00151 AlpMblContextId* contextIdListP; 00152 unsigned short contextIdCount; 00153 }; 00154 00155 typedef struct _AlpMblAddressList AlpMblAddressList; 00156 struct _AlpMblAddressList 00157 { 00158 AlpMblAddress* addressListP; 00159 unsigned short addressCount; 00160 }; 00161 00162 typedef struct _AlpMblContextCallCounter AlpMblContextCallCounter; 00163 struct _AlpMblContextCallCounter 00164 { 00165 uint32_t voiceIn; 00166 uint32_t voiceOut; 00167 uint32_t dataCs; 00168 uint64_t dataPsIn; 00169 uint64_t dataPsOut; 00170 uint32_t videoIn; 00171 uint32_t videoOut; 00172 }; 00173 00174 typedef struct _AlpMblOwnNumber AlpMblOwnNumber; 00175 struct _AlpMblOwnNumber 00176 { 00177 AlpMblAddress voice; 00178 AlpMblAddress fax; 00179 AlpMblAddress data; 00180 }; 00181 00182 typedef struct _AlpMblContextRestrictedContactByAddress AlpMblContextRestrictedContactByAddress; 00183 struct _AlpMblContextRestrictedContactByAddress 00184 { 00185 AlpMblContextRestrictedContactName name; 00186 AlpMblContextRestrictedContactAddress address; 00187 AlpMblContextRestrictedContactIndex storageIndex; 00188 }; 00189 00190 typedef struct _AlpMblContextRestrictedContact AlpMblContextRestrictedContact; 00191 struct _AlpMblContextRestrictedContact 00192 { 00193 AlpMblContextRestrictedContactType type; 00194 union 00195 { 00196 AlpMblContextRestrictedContactByAddress byAddress; 00197 void* reserved; 00198 }; 00199 }; 00200 00201 typedef struct _AlpMblContextRestrictedContactList AlpMblContextRestrictedContactList; 00202 struct _AlpMblContextRestrictedContactList 00203 { 00204 AlpMblContextRestrictedContact* contactListP; 00205 uint32_t count; 00206 }; 00207 00208 typedef struct _AlpMblContextRestrictionListFacility AlpMblContextRestrictionListFacility; 00209 struct _AlpMblContextRestrictionListFacility 00210 { 00211 uint32_t facility; 00212 uint32_t result; 00213 }; 00214 00215 00216 00226 typedef void (*AlpMblContextStatusChangeCallbackPtr) (void* iUserDataP, AlpMblContextId iMobileContextId, AlpMblContextStatus iPrevious, AlpMblContextStatus iCurrent, alp_status_t iError); 00227 00235 typedef void (*AlpMblContextNewCallCallbackPtr) (void* iUserDataP, AlpMblContextId iMobileContextId, AlpMblCallId iCallId, AlpMblCallDirection iDirection, AlpMblCallType iType); 00236 00243 typedef void (*AlpMblContextNetworkIdChangeCallbackPtr) (void* iUserDataP, AlpMblContextId iMobileContextId, AlpMblNetworkId iPrevious, AlpMblNetworkId iCurrent); 00244 00250 typedef void (*AlpMblContextEmergencyNumbersAvailableCallbackPtr) (void* iUserDataP, AlpMblContextId iMobileContextId, AlpMblAddressList iAddressList); 00251 00257 typedef void (*AlpMblContextSubscriberIdAvailableCallbackPtr) (void* iUserDataP, AlpMblContextId iMobileContextId, AlpMblContextSubscriberId iSubscriberId); 00258 00264 typedef void (*AlpMblContextHomeOperatorIdAvailableCallbackPtr) (void* iUserDataP, AlpMblContextId iMobileContextId, AlpMblOperatorId iOperatorId); 00265 00273 typedef void (*AlpMblContextVoiceMailIndicatorStatusChangeCallbackPtr) (void* iUserDataP, AlpMblContextId iMobileContextId, bool iIndicatorStatus, uint8_t iVoiceMailCount, AlpMblLineId iLineId); 00274 00281 typedef void (*AlpMblContextMissedCallCountChangeCallbackPtr) (void* iUserDataP, AlpMblContextId iMobileContextId, uint8_t iPreviousCount, uint8_t iCurrentCount); 00282 00289 typedef void (*AlpMblContextOwnNumbersAvailableCallbackPtr) (void* iUserDataP, AlpMblContextId iMobileContextId, AlpMblOwnNumber* iOwnNumberP); 00290 00297 typedef void (*AlpMblContextClirStatusChangeCallbackPtr) (void* iUserDataP, AlpMblContextId iMobileContextId, AlpMblContextCallerIdRestrictionStatus iPreviousStatus, AlpMblContextCallerIdRestrictionStatus iCurrentStatus); 00298 00305 typedef void (*AlpMblContextCostChangeCallbackPtr) (void* iUserDataP, AlpMblContextId iMobileContextId, AlpMblCost iPrevious, AlpMblCost iCurrent); 00306 00313 typedef void (*AlpMblContextCostLimitChangeCallbackPtr) (void* iUserDataP, AlpMblContextId iMobileContextId, AlpMblCost iPrevious, AlpMblCost iCurrent); 00314 00321 typedef void (*AlpMblContextCurrencyChangeCallbackPtr) (void* iUserDataP, AlpMblContextId iMobileContextId, AlpMblCurrency iPrevious, AlpMblCurrency iCurrent); 00322 00329 typedef void (*AlpMblContextUnitPriceChangeCallbackPtr) (void* iUserDataP, AlpMblContextId iMobileContextId, AlpMblCost iPrevious, AlpMblCost iCurrent); 00330 00336 typedef void (*AlpMblContextAvailableLinesChangeCallbackPtr) (void* iUserDataP, AlpMblContextId iMobileContextId, AlpMblLineList iAvailableLines); 00337 00344 typedef void (*AlpMblContextCurrentLineChangeCallbackPtr) (void* iUserDataP, AlpMblContextId iMobileContextId, AlpMblLineId iPrevious, AlpMblLineId iCurrent); 00345 00353 typedef void (*AlpMblContextRestrictionListChangeCallbackPtr) (void* iUserDataP, AlpMblContextId iMobileContextId, AlpMblContextRestrictionList iList, AlpMblContextRestrictionListAction iAction, AlpMblContextRestrictedContact iContact); 00354 00362 typedef void (*AlpMblContextRestrictionListStatusChangeCallbackPtr) (void* iUserDataP, AlpMblContextId iMobileContextId, AlpMblContextRestrictionList iList, AlpMblContextRestrictionListStatus iPrevious, AlpMblContextRestrictionListStatus iCurrent); 00363 00370 typedef void (*AlpMblContextCallListUpdateCallbackPtr) (void* iUserDataP, AlpMblContextId iMobileContextId, uint8_t iCallCount, AlpMblCallUpdateInfo* iCallUpdateInfoP); 00371 00372 00373 /****************************************************************************** 00374 * Prototype 00375 *****************************************************************************/ 00376 00422 alp_status_t alp_mbl_context_start(AlpMblContextId iContextId); 00423 00467 alp_status_t alp_mbl_context_stop(AlpMblContextId iContextId); 00468 00480 alp_status_t alp_mbl_context_delete(AlpMblContextId iContextId); 00481 00547 alp_status_t alp_mbl_context_get_status(AlpMblContextId iContextId, AlpMblContextStatus* oStatusP); 00548 00565 alp_status_t alp_mbl_context_get_description(AlpMblContextId iContextId, AlpMblContextDescription* oContextDescriptionP); 00566 00580 alp_status_t alp_mbl_context_get_address_scheme(AlpMblContextId iContextId, AlpMblAddressScheme* oContextAddressSchemeP); 00581 00595 alp_status_t alp_mbl_context_get_type(AlpMblContextId iContextId, AlpMblContextType* oContextTypeP); 00596 00610 alp_status_t alp_mbl_context_get_subscriber_id(AlpMblContextId iContextId, AlpMblContextSubscriberId* oContextSubscriberIdP); 00611 00612 00673 alp_status_t alp_mbl_context_get_network_id(AlpMblContextId iContextId, AlpMblNetworkId* oNetworkIdP); 00674 00738 alp_status_t alp_mbl_context_get_home_operator_id(AlpMblContextId iContextId, AlpMblOperatorId* oHomeOperatorIdP); 00739 00796 alp_status_t alp_mbl_context_new_call(AlpMblContextId iContextId, AlpMblAddress iAddress, AlpMblCallId* oCallIdP); 00797 00811 alp_status_t alp_mbl_context_new_video_call(AlpMblContextId iContextId, AlpMblAddress iAddress, AlpMblCallId* oCallIdP); 00812 00865 alp_status_t alp_mbl_context_new_emergency_call(AlpMblContextId iContextId, AlpMblAddress iAddress, AlpMblCallId* oCallIdP); 00866 00881 alp_status_t alp_mbl_context_is_emergency_number(AlpMblContextId iContextId, AlpMblAddress iAddress, bool* oIsEmergencyNumberP); 00882 00897 alp_status_t alp_mbl_context_get_calls(AlpMblContextId iContextId, AlpMblCallList* oCallListP, AlpMblCallFilter iFilter); 00898 00910 alp_status_t alp_mbl_context_release_calls(AlpMblContextId iContextId); 00911 00923 alp_status_t alp_mbl_context_release_active_calls(AlpMblContextId iContextId); 00924 00936 alp_status_t alp_mbl_context_release_held_calls(AlpMblContextId iContextId); 00937 00949 alp_status_t alp_mbl_context_hold_active_calls(AlpMblContextId iContextId); 00950 00965 alp_status_t alp_mbl_context_get_voice_mail_indicator_status(AlpMblContextId iContextId, bool* oIndicatorStatusP, uint8_t* oVoiceMailCountP); 00966 00980 alp_status_t alp_mbl_context_get_missed_call_count(AlpMblContextId iContextId, uint8_t* oMissedCallCountP); 00981 00995 alp_status_t alp_mbl_context_get_answer_mode(AlpMblContextId iContextId, AlpMblContextAnswerMode* oAnswerModeP); 00996 01010 alp_status_t alp_mbl_context_set_answer_mode(AlpMblContextId iContextId, AlpMblContextAnswerMode iAnswerMode); 01011 01025 alp_status_t alp_mbl_context_get_call_counter(AlpMblContextId iContextId, AlpMblContextCallCounter* oCallCounterP); 01026 01039 alp_status_t alp_mbl_context_reset_call_counter(AlpMblContextId iContextId, AlpMblContextCallCounterType iCallCounterType); 01040 01053 alp_status_t alp_mbl_context_get_own_number(AlpMblContextId iContextId, AlpMblOwnNumber* oOwnNumberP); 01054 01066 alp_status_t alp_mbl_context_set_own_number(AlpMblContextId iContextId, AlpMblOwnNumber* iOwnNumberP); 01067 01068 01077 alp_status_t alp_mbl_context_get_callid_restriction_status(AlpMblContextId iContextId, AlpMblContextCallerIdRestrictionStatus* oCallIdRestrictionP); 01078 01087 alp_status_t alp_mbl_context_set_callid_restriction_status(AlpMblContextId iContextId, AlpMblContextCallerIdRestrictionAdjustment iCallIdRestrictionAdjustment); 01088 01102 alp_status_t alp_mbl_context_get_cost(AlpMblContextId iContextId, AlpMblCost* oCostP); 01103 01115 alp_status_t alp_mbl_context_reset_cost(AlpMblContextId iContextId); 01116 01130 alp_status_t alp_mbl_context_get_cost_limit(AlpMblContextId iContextId, AlpMblCost* oCostLimitP); 01131 01145 alp_status_t alp_mbl_context_set_cost_limit(AlpMblContextId iContextId, AlpMblCost iCostLimit); 01146 01160 alp_status_t alp_mbl_context_get_currency(AlpMblContextId iContextId, AlpMblCurrency* oCurrencyP); 01161 01174 alp_status_t alp_mbl_context_set_currency(AlpMblContextId iContextId, AlpMblCurrency iCurrency); 01175 01189 alp_status_t alp_mbl_context_get_unit_price(AlpMblContextId iContextId, AlpMblCost* oUnitPriceP); 01190 01203 alp_status_t alp_mbl_context_set_unit_price(AlpMblContextId iContextId, AlpMblCost iUnitPrice); 01204 01218 alp_status_t alp_mbl_context_get_available_lines(AlpMblContextId iContextId, AlpMblLineList* oLineListP); 01219 01233 alp_status_t alp_mbl_context_get_current_line(AlpMblContextId iContextId, AlpMblLineId* oLineIdP); 01234 01247 alp_status_t alp_mbl_context_set_current_line(AlpMblContextId iContextId, AlpMblLineId iLineId); 01248 01249 01264 alp_status_t alp_mbl_context_add_restricted_contact(AlpMblContextId iContextId, AlpMblContextRestrictionList iList, AlpMblContextRestrictedContact* iContactP); 01265 01277 alp_status_t alp_mbl_context_remove_restricted_contact(AlpMblContextId iContextId, AlpMblContextRestrictionList iList, AlpMblContextRestrictedContact* iContactP); 01278 01289 alp_status_t alp_mbl_context_get_restricted_contacts(AlpMblContextId iContextId, AlpMblContextRestrictionList iList, AlpMblContextRestrictedContactList* oContactListP); 01290 01301 alp_status_t alp_mbl_context_get_restriction_list_status(AlpMblContextId iContextId, AlpMblContextRestrictionList iList, AlpMblContextRestrictionListStatus* oStatusP); 01302 01313 alp_status_t alp_mbl_context_set_restriction_list_status(AlpMblContextId iContextId, AlpMblContextRestrictionList iList, AlpMblContextRestrictionListStatus iStatus); 01314 01328 alp_status_t alp_mbl_context_get_restriction_list_facility(AlpMblContextId iContextId, AlpMblContextRestrictionList iList, AlpMblContextRestrictionListFacility* ioFacilityP) __attribute((deprecated)); 01329 01332 #ifdef __cplusplus 01333 } 01334 #endif // __cplusplus 01335 01336 01337 #endif // ALP_MOBILE_CONTEXT_H_
Copyright © 1999-2008 ACCESS CO., LTD. All rights reserved.