#include <buffer.hpp>
Inheritance diagram for obby::basic_buffer< Document, Selector >:

Definition at line 45 of file buffer.hpp.
| typedef Document obby::basic_buffer< Document, Selector >::document_type |
Definition at line 48 of file buffer.hpp.
| typedef Selector obby::basic_buffer< Document, Selector >::selector_type |
Definition at line 49 of file buffer.hpp.
| typedef document_type::template_type obby::basic_buffer< Document, Selector >::document_template_type |
Definition at line 50 of file buffer.hpp.
| typedef basic_document_info<document_type, selector_type> obby::basic_buffer< Document, Selector >::base_document_info_type |
Reimplemented in obby::basic_client_buffer< Document, Selector >, obby::basic_host_buffer< Document, Selector >, obby::basic_local_buffer< Document, Selector >, and obby::basic_server_buffer< Document, Selector >.
Definition at line 55 of file buffer.hpp.
| typedef basic_document_info<document_type, selector_type> obby::basic_buffer< Document, Selector >::document_info_type |
Reimplemented in obby::basic_client_buffer< Document, Selector >, obby::basic_host_buffer< Document, Selector >, obby::basic_local_buffer< Document, Selector >, and obby::basic_server_buffer< Document, Selector >.
Definition at line 58 of file buffer.hpp.
| typedef net6::basic_object<selector_type> obby::basic_buffer< Document, Selector >::base_net_type |
Reimplemented in obby::basic_client_buffer< Document, Selector >, obby::basic_host_buffer< Document, Selector >, obby::basic_local_buffer< Document, Selector >, and obby::basic_server_buffer< Document, Selector >.
Definition at line 61 of file buffer.hpp.
| typedef net6::basic_object<selector_type> obby::basic_buffer< Document, Selector >::net_type |
Reimplemented in obby::basic_client_buffer< Document, Selector >, obby::basic_host_buffer< Document, Selector >, obby::basic_local_buffer< Document, Selector >, and obby::basic_server_buffer< Document, Selector >.
Definition at line 62 of file buffer.hpp.
| typedef std::list<document_info_type*> obby::basic_buffer< Document, Selector >::document_list |
Definition at line 66 of file buffer.hpp.
| typedef document_list::size_type obby::basic_buffer< Document, Selector >::document_size_type |
Definition at line 67 of file buffer.hpp.
| typedef ptr_iterator< document_info_type, document_list, typename document_list::const_iterator > obby::basic_buffer< Document, Selector >::document_iterator |
Definition at line 73 of file buffer.hpp.
| typedef sigc::signal<void, unsigned int> obby::basic_buffer< Document, Selector >::signal_sync_init_type |
Definition at line 77 of file buffer.hpp.
| typedef sigc::signal<void> obby::basic_buffer< Document, Selector >::signal_sync_final_type |
Definition at line 79 of file buffer.hpp.
| typedef sigc::signal<void, const user&> obby::basic_buffer< Document, Selector >::signal_user_join_type |
Definition at line 81 of file buffer.hpp.
| typedef sigc::signal<void, const user&> obby::basic_buffer< Document, Selector >::signal_user_part_type |
Definition at line 83 of file buffer.hpp.
| typedef sigc::signal<void, const user&> obby::basic_buffer< Document, Selector >::signal_user_colour_type |
Definition at line 85 of file buffer.hpp.
| typedef sigc::signal<void, document_info_type&> obby::basic_buffer< Document, Selector >::signal_document_insert_type |
Definition at line 87 of file buffer.hpp.
| typedef sigc::signal<void, document_info_type&> obby::basic_buffer< Document, Selector >::signal_document_rename_type |
Definition at line 89 of file buffer.hpp.
| typedef sigc::signal<void, document_info_type&> obby::basic_buffer< Document, Selector >::signal_document_remove_type |
Definition at line 91 of file buffer.hpp.
| obby::basic_buffer< Document, Selector >::basic_buffer | ( | ) |
Definition at line 272 of file buffer.hpp.
References obby::init_gettext(), and obby::basic_buffer< Document, Selector >::m_package.
| obby::basic_buffer< Document, Selector >::~basic_buffer | ( | ) | [virtual] |
Definition at line 281 of file buffer.hpp.
References obby::basic_buffer< Document, Selector >::document_clear().
| bool obby::basic_buffer< Document, Selector >::is_open | ( | ) | const [virtual] |
Returns whether the session is open.
Definition at line 287 of file buffer.hpp.
References obby::basic_buffer< Document, Selector >::m_net.
| const user_table & obby::basic_buffer< Document, Selector >::get_user_table | ( | ) | const |
Returns the user table associated with the buffer.
Definition at line 293 of file buffer.hpp.
References obby::basic_buffer< Document, Selector >::m_user_table.
Referenced by obby::basic_client_document_info< Document, Selector >::on_net_record(), obby::basic_client_document_info< Document, Selector >::on_net_subscribe(), obby::basic_client_document_info< Document, Selector >::on_net_sync_chunk(), and obby::basic_client_document_info< Document, Selector >::on_net_unsubscribe().
| const chat & obby::basic_buffer< Document, Selector >::get_chat | ( | ) | const |
Returns the obby::chat for this buffer.
Definition at line 299 of file buffer.hpp.
References obby::basic_buffer< Document, Selector >::m_chat.
| basic_buffer< Document, Selector >::selector_type & obby::basic_buffer< Document, Selector >::get_selector | ( | ) |
Returns the selector of the underlaying net6 network object.
Definition at line 306 of file buffer.hpp.
References obby::basic_buffer< Document, Selector >::m_net.
| const basic_buffer< Document, Selector >::selector_type & obby::basic_buffer< Document, Selector >::get_selector | ( | ) | const |
Returns the selector of the underlaying net6 network object.
Definition at line 321 of file buffer.hpp.
References obby::basic_buffer< Document, Selector >::m_net.
| void obby::basic_buffer< Document, Selector >::serialise | ( | const std::string & | file | ) | const |
Serialises the complete obby session into file.
Definition at line 336 of file buffer.hpp.
References obby::serialise::object::add_attribute(), obby::serialise::object::add_child(), obby::basic_buffer< Document, Selector >::document_begin(), obby::basic_buffer< Document, Selector >::document_end(), obby::serialise::parser::get_root(), obby::basic_buffer< Document, Selector >::m_chat, obby::basic_buffer< Document, Selector >::m_user_table, obby_version(), obby::serialise::parser::serialise(), obby::chat::serialise(), obby::user_table::serialise(), obby::serialise::object::set_name(), and obby::serialise::parser::set_type().
| virtual void obby::basic_buffer< Document, Selector >::document_create | ( | const std::string & | title, | |
| const std::string & | encoding, | |||
| const std::string & | content | |||
| ) | [pure virtual] |
| virtual void obby::basic_buffer< Document, Selector >::document_remove | ( | base_document_info_type & | doc | ) | [pure virtual] |
Removes an existing document. signal_document_remove will be emitted if the document has been removed.
Implemented in obby::basic_client_buffer< Document, Selector >, and obby::basic_server_buffer< Document, Selector >.
| basic_buffer< Document, Selector >::document_info_type * obby::basic_buffer< Document, Selector >::document_find | ( | unsigned int | owner_id, | |
| unsigned int | id | |||
| ) | const |
Looks for a document with the given ID which belongs to the user with the given owner ID. Note that we do not take a real user object here because the ID is enough and one might not have a user object to the corresponding ID. So a time-consuming lookup is obsolete.
Reimplemented in obby::basic_client_buffer< Document, Selector >, obby::basic_host_buffer< Document, Selector >, obby::basic_local_buffer< Document, Selector >, and obby::basic_server_buffer< Document, Selector >.
Definition at line 370 of file buffer.hpp.
References obby::basic_buffer< Document, Selector >::m_docs.
| basic_buffer< Document, Selector >::document_iterator obby::basic_buffer< Document, Selector >::document_begin | ( | ) | const |
Returns the begin of the document list.
Definition at line 412 of file buffer.hpp.
References obby::basic_buffer< Document, Selector >::m_docs.
Referenced by obby::basic_buffer< Document, Selector >::serialise(), obby::basic_buffer< Document, Selector >::session_close_impl(), obby::basic_buffer< Document, Selector >::user_join(), and obby::basic_buffer< Document, Selector >::user_part().
| basic_buffer< Document, Selector >::document_iterator obby::basic_buffer< Document, Selector >::document_end | ( | ) | const |
Returns the end of the document list.
Definition at line 419 of file buffer.hpp.
References obby::basic_buffer< Document, Selector >::m_docs.
Referenced by obby::basic_buffer< Document, Selector >::serialise(), obby::basic_buffer< Document, Selector >::session_close_impl(), obby::basic_buffer< Document, Selector >::user_join(), and obby::basic_buffer< Document, Selector >::user_part().
| basic_buffer< Document, Selector >::document_size_type obby::basic_buffer< Document, Selector >::document_count | ( | ) | const |
Returns the size of the document list.
Definition at line 426 of file buffer.hpp.
References obby::basic_buffer< Document, Selector >::m_docs.
| virtual void obby::basic_buffer< Document, Selector >::send_message | ( | const std::string & | message | ) | [pure virtual] |
Sends a global chat message to all users.
Implemented in obby::basic_client_buffer< Document, Selector >, obby::basic_host_buffer< Document, Selector >, and obby::basic_server_buffer< Document, Selector >.
| bool obby::basic_buffer< Document, Selector >::check_colour | ( | const colour & | colour, | |
| const user * | ignore = NULL | |||
| ) | const |
Checks if given colour components match an other already present one too closely. TODO: Move this function to user table?
Definition at line 388 of file buffer.hpp.
References obby::user_table::begin(), obby::user::flags::CONNECTED, obby::user_table::end(), obby::basic_buffer< Document, Selector >::m_user_table, obby::user::flags::NONE, and obby::colour::similar_colour().
| const basic_buffer< Document, Selector >::document_template_type & obby::basic_buffer< Document, Selector >::get_document_template | ( | ) | const |
Returns the current document template that is used to instanciate a document.
Definition at line 433 of file buffer.hpp.
References obby::basic_buffer< Document, Selector >::m_document_template.
| void obby::basic_buffer< Document, Selector >::set_document_template | ( | const document_template_type & | tmpl | ) |
Sets a new template that is used to instanciate a document.
Definition at line 440 of file buffer.hpp.
References obby::basic_buffer< Document, Selector >::m_document_template.
| unsigned int obby::basic_buffer< Document, Selector >::find_free_suffix | ( | const std::string & | for_title, | |
| const document_info_type * | ignore | |||
| ) | const |
Looks for a free suffix in the buffer.
Definition at line 447 of file buffer.hpp.
References obby::basic_buffer< Document, Selector >::m_docs.
| basic_buffer< Document, Selector >::signal_sync_init_type obby::basic_buffer< Document, Selector >::sync_init_event | ( | ) | const |
Signal which will be emitted when the initial syncrhonisation begins, thus if the client has logged in successfully.
Definition at line 480 of file buffer.hpp.
References obby::basic_buffer< Document, Selector >::m_signal_sync_init.
| basic_buffer< Document, Selector >::signal_sync_final_type obby::basic_buffer< Document, Selector >::sync_final_event | ( | ) | const |
Signal which will be emitted when the initial synchronisation of the user list and the document list has been completed.
Definition at line 487 of file buffer.hpp.
References obby::basic_buffer< Document, Selector >::m_signal_sync_final.
| basic_buffer< Document, Selector >::signal_user_join_type obby::basic_buffer< Document, Selector >::user_join_event | ( | ) | const |
Signal which will be emitted if a new user has joined the obby session.
Definition at line 494 of file buffer.hpp.
References obby::basic_buffer< Document, Selector >::m_signal_user_join.
| basic_buffer< Document, Selector >::signal_user_part_type obby::basic_buffer< Document, Selector >::user_part_event | ( | ) | const |
Signal which will be emitted if a user has quit.
Definition at line 501 of file buffer.hpp.
References obby::basic_buffer< Document, Selector >::m_signal_user_part.
| basic_buffer< Document, Selector >::signal_user_colour_type obby::basic_buffer< Document, Selector >::user_colour_event | ( | ) | const |
Signal which will be emitted if a user changes his colour.
Definition at line 508 of file buffer.hpp.
References obby::basic_buffer< Document, Selector >::m_signal_user_colour.
| basic_buffer< Document, Selector >::signal_document_insert_type obby::basic_buffer< Document, Selector >::document_insert_event | ( | ) | const |
Signal which will be emitted when another participant in the obby session has created a new document.
Definition at line 515 of file buffer.hpp.
References obby::basic_buffer< Document, Selector >::m_signal_document_insert.
| signal_document_rename_type obby::basic_buffer< Document, Selector >::document_rename_event | ( | ) | const |
Signal which will be emitted when another participant in the obby session renames one document.
| basic_buffer< Document, Selector >::signal_document_remove_type obby::basic_buffer< Document, Selector >::document_remove_event | ( | ) | const |
Signal which will be emitted when another participant in the obby session has removed an existing document.
Definition at line 529 of file buffer.hpp.
References obby::basic_buffer< Document, Selector >::m_signal_document_remove.
| void obby::basic_buffer< Document, Selector >::document_add | ( | document_info_type & | document | ) | [protected] |
Internal function to add a document to the buffer.
Definition at line 536 of file buffer.hpp.
References obby::basic_buffer< Document, Selector >::m_docs, obby::basic_buffer< Document, Selector >::m_signal_document_insert, obby::basic_document_info< Document, Selector >::subscribe_event(), obby::basic_document_info< Document, Selector >::user_begin(), and obby::basic_document_info< Document, Selector >::user_end().
| void obby::basic_buffer< Document, Selector >::document_delete | ( | document_info_type & | document | ) | [protected] |
Internal function to delete a document from the buffer.
Definition at line 567 of file buffer.hpp.
References obby::basic_buffer< Document, Selector >::m_docs, and obby::basic_buffer< Document, Selector >::m_signal_document_remove.
| void obby::basic_buffer< Document, Selector >::document_clear | ( | ) | [protected] |
Internal function to clear the whole document list.
Definition at line 583 of file buffer.hpp.
References obby::basic_buffer< Document, Selector >::m_docs.
Referenced by obby::basic_buffer< Document, Selector >::~basic_buffer().
| void obby::basic_buffer< Document, Selector >::user_join | ( | const user & | user | ) | [protected] |
Internal function to add a user to the buffer.
Definition at line 594 of file buffer.hpp.
References obby::basic_buffer< Document, Selector >::document_begin(), obby::basic_buffer< Document, Selector >::document_end(), and obby::basic_buffer< Document, Selector >::m_signal_user_join.
| void obby::basic_buffer< Document, Selector >::user_part | ( | const user & | user | ) | [protected] |
Internal function that clears up when a user has gone.
Definition at line 610 of file buffer.hpp.
References obby::basic_buffer< Document, Selector >::document_begin(), obby::basic_buffer< Document, Selector >::document_end(), obby::basic_buffer< Document, Selector >::m_signal_user_part, obby::basic_buffer< Document, Selector >::m_user_table, and obby::user_table::remove_user().
| void obby::basic_buffer< Document, Selector >::session_close | ( | ) | [protected, virtual] |
Closes the session.
Reimplemented in obby::basic_client_buffer< Document, Selector >, obby::basic_host_buffer< Document, Selector >, obby::basic_local_buffer< Document, Selector >, and obby::basic_server_buffer< Document, Selector >.
Definition at line 626 of file buffer.hpp.
References obby::basic_buffer< Document, Selector >::session_close_impl().
| void obby::basic_buffer< Document, Selector >::session_close_impl | ( | ) | [protected] |
Implementation of session_close() that does not call a base function.
Reimplemented in obby::basic_client_buffer< Document, Selector >, obby::basic_host_buffer< Document, Selector >, obby::basic_local_buffer< Document, Selector >, and obby::basic_server_buffer< Document, Selector >.
Definition at line 632 of file buffer.hpp.
References obby::basic_buffer< Document, Selector >::document_begin(), obby::basic_buffer< Document, Selector >::document_end(), and obby::basic_buffer< Document, Selector >::m_net.
Referenced by obby::basic_buffer< Document, Selector >::session_close().
signal_sync_init_type obby::basic_buffer< Document, Selector >::m_signal_sync_init [protected] |
Definition at line 245 of file buffer.hpp.
Referenced by obby::basic_buffer< Document, Selector >::sync_init_event().
signal_sync_final_type obby::basic_buffer< Document, Selector >::m_signal_sync_final [protected] |
Definition at line 246 of file buffer.hpp.
Referenced by obby::basic_buffer< Document, Selector >::sync_final_event().
signal_user_join_type obby::basic_buffer< Document, Selector >::m_signal_user_join [protected] |
Definition at line 248 of file buffer.hpp.
Referenced by obby::basic_buffer< Document, Selector >::user_join(), and obby::basic_buffer< Document, Selector >::user_join_event().
signal_user_part_type obby::basic_buffer< Document, Selector >::m_signal_user_part [protected] |
Definition at line 249 of file buffer.hpp.
Referenced by obby::basic_buffer< Document, Selector >::user_part(), and obby::basic_buffer< Document, Selector >::user_part_event().
signal_user_colour_type obby::basic_buffer< Document, Selector >::m_signal_user_colour [protected] |
Definition at line 250 of file buffer.hpp.
Referenced by obby::basic_buffer< Document, Selector >::user_colour_event().
signal_document_insert_type obby::basic_buffer< Document, Selector >::m_signal_document_insert [protected] |
Definition at line 252 of file buffer.hpp.
Referenced by obby::basic_buffer< Document, Selector >::document_add(), and obby::basic_buffer< Document, Selector >::document_insert_event().
signal_document_remove_type obby::basic_buffer< Document, Selector >::m_signal_document_remove [protected] |
Definition at line 254 of file buffer.hpp.
Referenced by obby::basic_buffer< Document, Selector >::document_delete(), and obby::basic_buffer< Document, Selector >::document_remove_event().
net6::main obby::basic_buffer< Document, Selector >::m_netkit [protected] |
Definition at line 256 of file buffer.hpp.
std::auto_ptr<net_type> obby::basic_buffer< Document, Selector >::m_net [protected] |
Definition at line 257 of file buffer.hpp.
Referenced by obby::basic_buffer< Document, Selector >::get_selector(), obby::basic_buffer< Document, Selector >::is_open(), and obby::basic_buffer< Document, Selector >::session_close_impl().
user_table obby::basic_buffer< Document, Selector >::m_user_table [protected] |
Definition at line 259 of file buffer.hpp.
Referenced by obby::basic_buffer< Document, Selector >::check_colour(), obby::basic_server_buffer< Document, Selector >::document_create_impl(), obby::basic_buffer< Document, Selector >::get_user_table(), obby::basic_host_buffer< Document, Selector >::init_impl(), obby::basic_server_buffer< Document, Selector >::on_command_emote(), obby::basic_server_buffer< Document, Selector >::on_join(), obby::basic_client_buffer< Document, Selector >::on_join(), obby::basic_server_buffer< Document, Selector >::on_login(), obby::basic_server_buffer< Document, Selector >::open(), obby::basic_buffer< Document, Selector >::serialise(), obby::basic_server_buffer< Document, Selector >::session_close_impl(), obby::basic_local_buffer< Document, Selector >::session_close_impl(), obby::basic_server_buffer< Document, Selector >::set_enable_keepalives(), obby::basic_server_buffer< Document, Selector >::user_colour_impl(), and obby::basic_buffer< Document, Selector >::user_part().
chat obby::basic_buffer< Document, Selector >::m_chat [protected] |
Definition at line 260 of file buffer.hpp.
Referenced by obby::basic_buffer< Document, Selector >::get_chat(), and obby::basic_buffer< Document, Selector >::serialise().
document_list obby::basic_buffer< Document, Selector >::m_docs [protected] |
Definition at line 262 of file buffer.hpp.
Referenced by obby::basic_buffer< Document, Selector >::document_add(), obby::basic_buffer< Document, Selector >::document_begin(), obby::basic_buffer< Document, Selector >::document_clear(), obby::basic_buffer< Document, Selector >::document_count(), obby::basic_buffer< Document, Selector >::document_delete(), obby::basic_buffer< Document, Selector >::document_end(), obby::basic_buffer< Document, Selector >::document_find(), and obby::basic_buffer< Document, Selector >::find_free_suffix().
document_template_type obby::basic_buffer< Document, Selector >::m_document_template [protected] |
Definition at line 263 of file buffer.hpp.
Referenced by obby::basic_buffer< Document, Selector >::get_document_template(), and obby::basic_buffer< Document, Selector >::set_document_template().
unsigned int obby::basic_buffer< Document, Selector >::m_doc_counter [protected] |
Definition at line 264 of file buffer.hpp.
net6::gettext_package obby::basic_buffer< Document, Selector >::m_package [protected] |
Definition at line 266 of file buffer.hpp.
Referenced by obby::basic_buffer< Document, Selector >::basic_buffer().
1.5.1