llviewermessage.h

Go to the documentation of this file.
00001 
00032 #ifndef LL_LLVIEWERMESSAGE_H
00033 #define LL_LLVIEWERMESSAGE_H
00034 
00035 #include "llinstantmessage.h"
00036 #include "lltransactiontypes.h"
00037 #include "lluuid.h"
00038 #include "stdenums.h"
00039 
00040 //
00041 // Forward declarations
00042 //
00043 class LLColor4;
00044 class LLViewerObject;
00045 class LLInventoryObject;
00046 class LLInventoryItem;
00047 class LLMessageSystem;
00048 class LLViewerRegion;
00049 
00050 //
00051 // Prototypes
00052 //
00053 
00054 enum InventoryOfferResponse
00055 {
00056         IOR_ACCEPT,
00057         IOR_DECLINE,
00058         IOR_MUTE,
00059         IOR_BUSY
00060 };
00061 
00062 BOOL can_afford_transaction(S32 cost);
00063 void give_money(const LLUUID& uuid, LLViewerRegion* region, S32 amount, BOOL is_group = FALSE,
00064                                 S32 trx_type = TRANS_GIFT, const LLString& desc = LLString::null);
00065 void busy_message (LLMessageSystem* msg, LLUUID from_id);
00066 
00067 void process_logout_reply(LLMessageSystem* msg, void**);
00068 void process_layer_data(LLMessageSystem *mesgsys, void **user_data);
00069 void process_derez_ack(LLMessageSystem*, void**);
00070 void process_places_reply(LLMessageSystem* msg, void** data);
00071 void send_sound_trigger(const LLUUID& sound_id, F32 gain);
00072 void process_improved_im(LLMessageSystem *msg, void **user_data);
00073 void process_script_question(LLMessageSystem *msg, void **user_data);
00074 void process_chat_from_simulator(LLMessageSystem *mesgsys, void **user_data);
00075 
00076 //void process_agent_to_new_region(LLMessageSystem *mesgsys, void **user_data);
00077 void send_agent_update(BOOL force_send, BOOL send_reliable = FALSE);
00078 void process_object_update(LLMessageSystem *mesgsys, void **user_data);
00079 void process_compressed_object_update(LLMessageSystem *mesgsys, void **user_data);
00080 void process_cached_object_update(LLMessageSystem *mesgsys, void **user_data);
00081 void process_terse_object_update_improved(LLMessageSystem *mesgsys, void **user_data);
00082 
00083 void send_simulator_throttle_settings(const LLHost &host);
00084 void process_kill_object(       LLMessageSystem *mesgsys, void **user_data);
00085 void process_time_synch(        LLMessageSystem *mesgsys, void **user_data);
00086 void process_sound_trigger(LLMessageSystem *mesgsys, void **user_data);
00087 void process_preload_sound(     LLMessageSystem *mesgsys, void **user_data);
00088 void process_attached_sound(    LLMessageSystem *mesgsys, void **user_data);
00089 void process_attached_sound_gain_change(        LLMessageSystem *mesgsys, void **user_data);
00090 //void process_attached_sound_cutoff_radius(    LLMessageSystem *mesgsys, void **user_data);
00091 void process_energy_statistics(LLMessageSystem *mesgsys, void **user_data);
00092 void process_health_message(LLMessageSystem *mesgsys, void **user_data);
00093 void process_sim_stats(LLMessageSystem *mesgsys, void **user_data);
00094 void process_shooter_agent_hit(LLMessageSystem* msg, void** user_data);
00095 void process_avatar_info_request(LLMessageSystem *mesgsys, void **user_data);
00096 void process_avatar_animation(LLMessageSystem *mesgsys, void **user_data);
00097 void process_avatar_appearance(LLMessageSystem *mesgsys, void **user_data);
00098 void process_camera_constraint(LLMessageSystem *mesgsys, void **user_data);
00099 void process_avatar_sit_response(LLMessageSystem *mesgsys, void **user_data);
00100 void process_set_follow_cam_properties(LLMessageSystem *mesgsys, void **user_data);
00101 void process_clear_follow_cam_properties(LLMessageSystem *mesgsys, void **user_data);
00102 void process_name_value(LLMessageSystem *mesgsys, void **user_data);
00103 void process_remove_name_value(LLMessageSystem *mesgsys, void **user_data);
00104 void process_kick_user(LLMessageSystem *msg, void** /*user_data*/);
00105 //void process_avatar_init_complete(LLMessageSystem *msg, void** /*user_data*/);
00106 
00107 void process_economy_data(LLMessageSystem *msg, void** /*user_data*/);
00108 void process_money_balance_reply(LLMessageSystem* msg_system, void**);
00109 void process_adjust_balance(LLMessageSystem* msg_system, void**);
00110 
00111 void process_alert_message(LLMessageSystem* msg, void**);
00112 void process_agent_alert_message(LLMessageSystem* msgsystem, void** user_data);
00113 void process_alert_core(const char* buffer, BOOL modal);
00114 
00115 // "Mean" or player-vs-player abuse
00116 void handle_show_mean_events(void *);
00117 void process_mean_collision_alert_message(LLMessageSystem* msg, void**);
00118 
00119 void process_frozen_message(LLMessageSystem* msg, void**);
00120 
00121 void process_derez_container(LLMessageSystem *msg, void**);
00122 void container_inventory_arrived(LLViewerObject* object,
00123                                                                  std::list<LLPointer<LLInventoryObject> >* inventory, //InventoryObjectList
00124                                                                  S32 serial_num,
00125                                                                  void* data);
00126 
00127 // agent movement
00128 void send_complete_agent_movement(const LLHost& sim_host);
00129 void process_agent_movement_complete(LLMessageSystem* msg, void**);
00130 void process_crossed_region(LLMessageSystem* msg, void**);
00131 void process_teleport_start(LLMessageSystem* msg, void**);
00132 void process_teleport_progress(LLMessageSystem* msg, void**);
00133 void process_teleport_failed(LLMessageSystem *msg,void**);
00134 void process_teleport_finish(LLMessageSystem *msg, void**);
00135 
00136 //void process_user_sim_location_reply(LLMessageSystem *msg,void**);
00137 void process_teleport_local(LLMessageSystem *msg,void**);
00138 void process_user_sim_location_reply(LLMessageSystem *msg,void**);
00139 
00140 void send_simple_im(const LLUUID& to_id,
00141                                         const char* message,
00142                                         EInstantMessage dialog = IM_NOTHING_SPECIAL,
00143                                         const LLUUID& id = LLUUID::null);
00144 
00145 void send_group_notice(const LLUUID& group_id,
00146                                            const char* subject,
00147                                            const char* message,
00148                                            const LLInventoryItem* item);
00149 
00150 void handle_lure(const LLUUID& invitee);
00151 void handle_lure(LLDynamicArray<LLUUID>& ids);
00152 
00153 // always from gAgent and 
00154 // routes through the gAgent's current simulator
00155 void send_improved_im(const LLUUID& to_id,
00156                                         const char* name,
00157                                         const char* message,
00158                                         U8 offline = IM_ONLINE,
00159                                         EInstantMessage dialog = IM_NOTHING_SPECIAL,
00160                                         const LLUUID& id = LLUUID::null,
00161                                         U32 timestamp = NO_TIMESTAMP, 
00162                                         const U8* binary_bucket = (U8*)EMPTY_BINARY_BUCKET,
00163                                         S32 binary_bucket_size = EMPTY_BINARY_BUCKET_SIZE);
00164 
00165 void process_user_info_reply(LLMessageSystem* msg, void**);
00166 
00167 // method to format the time. Buffer should be at least
00168 // TIME_STR_LENGTH long, and the function reutnrs buffer (for use in
00169 // sprintf and the like)
00170 const S32 TIME_STR_LENGTH = 30;
00171 char* formatted_time(const time_t& the_time, char* buffer);
00172 
00173 void send_places_query(const LLUUID& query_id,
00174                                            const LLUUID& trans_id,
00175                                            const char* query_text,
00176                                            U32 query_flags,
00177                                            S32 category, 
00178                                            const char* sim_name);
00179 void process_script_dialog(LLMessageSystem* msg, void**);
00180 void process_load_url(LLMessageSystem* msg, void**);
00181 void process_script_teleport_request(LLMessageSystem* msg, void**);
00182 void process_covenant_reply(LLMessageSystem* msg, void**);
00183 void onCovenantLoadComplete(LLVFS *vfs,
00184                                                         const LLUUID& asset_uuid,
00185                                                         LLAssetType::EType type,
00186                                                         void* user_data, S32 status, LLExtStat ext_status);
00187 void callbackCacheEstateOwnerName(
00188                 const LLUUID& id,
00189                 const char* first,
00190                 const char* last,
00191                 BOOL is_group,
00192                 void*);
00193 
00194 // calling cards
00195 void process_offer_callingcard(LLMessageSystem* msg, void**);
00196 void process_accept_callingcard(LLMessageSystem* msg, void**);
00197 void process_decline_callingcard(LLMessageSystem* msg, void**);
00198 
00199 // Message system exception prototypes
00200 void invalid_message_callback(LLMessageSystem*, void*, EMessageException);
00201 
00202 void process_initiate_download(LLMessageSystem* msg, void**);
00203 void inventory_offer_callback(S32 option, void* user_data);
00204 void start_new_inventory_observer();
00205 
00206 struct LLOfferInfo
00207 {
00208         EInstantMessage mIM;
00209         LLUUID mFromID;
00210         BOOL mFromGroup;
00211         BOOL mFromObject;
00212         LLUUID mTransactionID;
00213         LLUUID mFolderID;
00214         LLUUID mObjectID;
00215         LLAssetType::EType mType;
00216         LLString mFromName;
00217         LLString mDesc;
00218         LLHost mHost;
00219 };
00220 
00221 void process_feature_disabled_message(LLMessageSystem* msg, void**);
00222 
00223 #endif
00224 
00225 

Generated on Thu Jul 1 06:09:31 2010 for Second Life Viewer by  doxygen 1.4.7