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_energy_statistics(LLMessageSystem *mesgsys, void **user_data);
00091 void process_health_message(LLMessageSystem *mesgsys, void **user_data);
00092 void process_sim_stats(LLMessageSystem *mesgsys, void **user_data);
00093 void process_shooter_agent_hit(LLMessageSystem* msg, void** user_data);
00094 void process_avatar_animation(LLMessageSystem *mesgsys, void **user_data);
00095 void process_avatar_appearance(LLMessageSystem *mesgsys, void **user_data);
00096 void process_camera_constraint(LLMessageSystem *mesgsys, void **user_data);
00097 void process_avatar_sit_response(LLMessageSystem *mesgsys, void **user_data);
00098 void process_set_follow_cam_properties(LLMessageSystem *mesgsys, void **user_data);
00099 void process_clear_follow_cam_properties(LLMessageSystem *mesgsys, void **user_data);
00100 void process_name_value(LLMessageSystem *mesgsys, void **user_data);
00101 void process_remove_name_value(LLMessageSystem *mesgsys, void **user_data);
00102 void process_kick_user(LLMessageSystem *msg, void** /*user_data*/);
00103 //void process_avatar_init_complete(LLMessageSystem *msg, void** /*user_data*/);
00104 
00105 void process_economy_data(LLMessageSystem *msg, void** /*user_data*/);
00106 void process_money_balance_reply(LLMessageSystem* msg_system, void**);
00107 void process_adjust_balance(LLMessageSystem* msg_system, void**);
00108 
00109 void process_alert_message(LLMessageSystem* msg, void**);
00110 void process_agent_alert_message(LLMessageSystem* msgsystem, void** user_data);
00111 void process_alert_core(const std::string& message, BOOL modal);
00112 
00113 // "Mean" or player-vs-player abuse
00114 typedef std::list<LLMeanCollisionData*> mean_collision_list_t;
00115 extern mean_collision_list_t gMeanCollisionList;
00116 
00117 void handle_show_mean_events(void *);
00118 void process_mean_collision_alert_message(LLMessageSystem* msg, void**);
00119 
00120 void process_frozen_message(LLMessageSystem* msg, void**);
00121 
00122 void process_derez_container(LLMessageSystem *msg, void**);
00123 void container_inventory_arrived(LLViewerObject* object,
00124                                                                  std::list<LLPointer<LLInventoryObject> >* inventory, //InventoryObjectList
00125                                                                  S32 serial_num,
00126                                                                  void* data);
00127 
00128 // agent movement
00129 void send_complete_agent_movement(const LLHost& sim_host);
00130 void process_agent_movement_complete(LLMessageSystem* msg, void**);
00131 void process_crossed_region(LLMessageSystem* msg, void**);
00132 void process_teleport_start(LLMessageSystem* msg, void**);
00133 void process_teleport_progress(LLMessageSystem* msg, void**);
00134 void process_teleport_failed(LLMessageSystem *msg,void**);
00135 void process_teleport_finish(LLMessageSystem *msg, void**);
00136 
00137 //void process_user_sim_location_reply(LLMessageSystem *msg,void**);
00138 void process_teleport_local(LLMessageSystem *msg,void**);
00139 void process_user_sim_location_reply(LLMessageSystem *msg,void**);
00140 
00141 void send_simple_im(const LLUUID& to_id,
00142                                         const char* message,
00143                                         EInstantMessage dialog = IM_NOTHING_SPECIAL,
00144                                         const LLUUID& id = LLUUID::null);
00145 
00146 void send_group_notice(const LLUUID& group_id,
00147                                            const char* subject,
00148                                            const char* message,
00149                                            const LLInventoryItem* item);
00150 
00151 void handle_lure(const LLUUID& invitee);
00152 void handle_lure(LLDynamicArray<LLUUID>& ids);
00153 
00154 // always from gAgent and 
00155 // routes through the gAgent's current simulator
00156 void send_improved_im(const LLUUID& to_id,
00157                                         const char* name,
00158                                         const char* message,
00159                                         U8 offline = IM_ONLINE,
00160                                         EInstantMessage dialog = IM_NOTHING_SPECIAL,
00161                                         const LLUUID& id = LLUUID::null,
00162                                         U32 timestamp = NO_TIMESTAMP, 
00163                                         const U8* binary_bucket = (U8*)EMPTY_BINARY_BUCKET,
00164                                         S32 binary_bucket_size = EMPTY_BINARY_BUCKET_SIZE);
00165 
00166 void process_user_info_reply(LLMessageSystem* msg, void**);
00167 
00168 // method to format the time. Buffer should be at least
00169 // TIME_STR_LENGTH long, and the function reutnrs buffer (for use in
00170 // sprintf and the like)
00171 const S32 TIME_STR_LENGTH = 30;
00172 char* formatted_time(const time_t& the_time, char* buffer);
00173 
00174 void send_places_query(const LLUUID& query_id,
00175                                            const LLUUID& trans_id,
00176                                            const char* query_text,
00177                                            U32 query_flags,
00178                                            S32 category, 
00179                                            const char* sim_name);
00180 void process_script_dialog(LLMessageSystem* msg, void**);
00181 void process_load_url(LLMessageSystem* msg, void**);
00182 void process_script_teleport_request(LLMessageSystem* msg, void**);
00183 void process_covenant_reply(LLMessageSystem* msg, void**);
00184 void onCovenantLoadComplete(LLVFS *vfs,
00185                                                         const LLUUID& asset_uuid,
00186                                                         LLAssetType::EType type,
00187                                                         void* user_data, S32 status, LLExtStat ext_status);
00188 void callbackCacheEstateOwnerName(
00189                 const LLUUID& id,
00190                 const char* first,
00191                 const char* last,
00192                 BOOL is_group,
00193                 void*);
00194 
00195 // calling cards
00196 void process_offer_callingcard(LLMessageSystem* msg, void**);
00197 void process_accept_callingcard(LLMessageSystem* msg, void**);
00198 void process_decline_callingcard(LLMessageSystem* msg, void**);
00199 
00200 // Message system exception prototypes
00201 void invalid_message_callback(LLMessageSystem*, void*, EMessageException);
00202 
00203 void process_initiate_download(LLMessageSystem* msg, void**);
00204 void inventory_offer_callback(S32 option, void* user_data);
00205 void start_new_inventory_observer();
00206 
00207 struct LLOfferInfo
00208 {
00209         EInstantMessage mIM;
00210         LLUUID mFromID;
00211         BOOL mFromGroup;
00212         BOOL mFromObject;
00213         LLUUID mTransactionID;
00214         LLUUID mFolderID;
00215         LLUUID mObjectID;
00216         LLAssetType::EType mType;
00217         LLString mFromName;
00218         LLString mDesc;
00219         LLHost mHost;
00220 };
00221 
00222 void process_feature_disabled_message(LLMessageSystem* msg, void**);
00223 
00224 #endif
00225 
00226 

Generated on Fri May 16 08:34:14 2008 for SecondLife by  doxygen 1.5.5