#include <scim_transaction.h>
| Public Member Functions | |
| Transaction (size_t bufsize=512) | |
| Constructor. | |
| ~Transaction () | |
| Destructor. | |
| bool | valid () const | 
| Check if the transaction is valid. | |
| size_t | get_size () const | 
| Get the size of this transaction. | |
| bool | write_to_socket (const Socket &socket, uint32 signature=0) const | 
| Write the transaction to a socket. | |
| bool | read_from_socket (const Socket &socket, int timeout=-1) | 
| Read a transaction from a socket. | |
| bool | write_to_buffer (void *buf, size_t bufsize) const | 
| Write the transaction into a buffer. | |
| bool | read_from_buffer (const void *buf, size_t bufsize) | 
| Read a transaction from a buffer. | |
| void | put_command (int cmd) | 
| Store a command into this transaction. | |
| void | put_data (uint32 val) | 
| Store a uint32 value into this transaction. | |
| void | put_data (const String &str) | 
| Store a String object into this transaction. | |
| void | put_data (const WideString &str) | 
| Store a WideString object into this transaction. | |
| void | put_data (const KeyEvent &key) | 
| Store a KeyEvent object into this transaction. | |
| void | put_data (const AttributeList &attrs) | 
| Store an AttributeList object into this transaction. | |
| void | put_data (const Property &property) | 
| Store a Property object into this transaction. | |
| void | put_data (const PropertyList &properties) | 
| Store a PropertyList object into this transaction. | |
| void | put_data (const LookupTable &table) | 
| Store a LookupTable object into this transaction. | |
| void | put_data (const std::vector< uint32 > &vec) | 
| Store a std::vector<uint32> object into this transaction. | |
| void | put_data (const std::vector< String > &vec) | 
| Store a std::vector<String> object into this transaction. | |
| void | put_data (const std::vector< WideString > &vec) | 
| Store a std::vector<WideString> object into this transaction. | |
| void | put_data (const char *raw, size_t bufsize) | 
| Store a raw buffer into this transaction. | |
| void | put_data (const Transaction &trans) | 
| Store another Transaction object into this transaction. | |
| TransactionDataType | get_data_type () const | 
| Get the type of the data at current read position. | |
| bool | get_command (int &cmd) | 
| Get a command from current read position. | |
| bool | get_data (uint32 &val) | 
| Get an uint32 value from current read position. | |
| bool | get_data (String &str) | 
| Get a String from current read position. | |
| bool | get_data (WideString &str) | 
| Get a WideString from current read position. | |
| bool | get_data (KeyEvent &key) | 
| Get a KeyEvent from current read position. | |
| bool | get_data (AttributeList &attrs) | 
| Get an AttributeList from current read position. | |
| bool | get_data (Property &property) | 
| Get a Property from current read position. | |
| bool | get_data (PropertyList &properties) | 
| Get a PropertyList from current read position. | |
| bool | get_data (CommonLookupTable &table) | 
| Get a CommonLookupTable from current read position. | |
| bool | get_data (std::vector< uint32 > &vec) | 
| Get a std::vector<uint32> from current read position. | |
| bool | get_data (std::vector< String > &vec) | 
| Get a std::vector<String> from current read position. | |
| bool | get_data (std::vector< WideString > &vec) | 
| Get a std::vector<WideString> from current read position. | |
| bool | get_data (char **raw, size_t &bufsize) | 
| Get a raw buffer from current read position. | |
| bool | get_data (Transaction &trans) | 
| Get a Transaction object from current read position. | |
| bool | skip_data () | 
| Skip one data from current read position. | |
| void | rewind () | 
| Rewind the current read position, then the data can be read again. | |
| void | clear () | 
| Clear the transaction, all data in this transaction will be freed. | |
| Friends | |
| class | TransactionReader | 
| scim::Transaction::Transaction | ( | size_t | bufsize = 512 | ) | 
Constructor.
| bufsize | the initial buffer size, maybe grow afterwards. | 
| scim::Transaction::~Transaction | ( | ) | 
Destructor.
| bool scim::Transaction::valid | ( | ) | const | 
Check if the transaction is valid.
| size_t scim::Transaction::get_size | ( | ) | const | 
Get the size of this transaction.
Write the transaction to a socket.
| socket | the socket to be written to. | |
| signature | the leading signature to be written into the socket before the transaction itself, this signature maybe missing when receive the transaction. It's useful to check the connection before receiving a transaction by reading this signature. | 
| bool scim::Transaction::read_from_socket | ( | const Socket & | socket, | |
| int | timeout = -1 | |||
| ) | 
Read a transaction from a socket.
| socket | the socket to be read from. | |
| timeout | time out in millisecond (1/1000 second), -1 means infinity. | 
| bool scim::Transaction::write_to_buffer | ( | void * | buf, | |
| size_t | bufsize | |||
| ) | const | 
Write the transaction into a buffer.
| buf | A buffer to store the transaction data. | |
| bufsize | The size of this buffer. | 
| bool scim::Transaction::read_from_buffer | ( | const void * | buf, | |
| size_t | bufsize | |||
| ) | 
Read a transaction from a buffer.
| buf | A buffer contains the transaction. | |
| bufsize | The size of this buffer. | 
| void scim::Transaction::put_command | ( | int | cmd | ) | 
Store a command into this transaction.
| cmd | the command code, like SCIM_TRANS_CMD_FOCUS_IN etc. | 
| void scim::Transaction::put_data | ( | uint32 | val | ) | 
Store a uint32 value into this transaction.
| void scim::Transaction::put_data | ( | const String & | str | ) | 
Store a String object into this transaction.
| void scim::Transaction::put_data | ( | const WideString & | str | ) | 
Store a WideString object into this transaction.
| void scim::Transaction::put_data | ( | const KeyEvent & | key | ) | 
Store a KeyEvent object into this transaction.
| void scim::Transaction::put_data | ( | const AttributeList & | attrs | ) | 
Store an AttributeList object into this transaction.
| void scim::Transaction::put_data | ( | const Property & | property | ) | 
Store a Property object into this transaction.
| void scim::Transaction::put_data | ( | const PropertyList & | properties | ) | 
Store a PropertyList object into this transaction.
| void scim::Transaction::put_data | ( | const LookupTable & | table | ) | 
Store a LookupTable object into this transaction.
| void scim::Transaction::put_data | ( | const std::vector< uint32 > & | vec | ) | 
Store a std::vector<uint32> object into this transaction.
| void scim::Transaction::put_data | ( | const std::vector< String > & | vec | ) | 
Store a std::vector<String> object into this transaction.
| void scim::Transaction::put_data | ( | const std::vector< WideString > & | vec | ) | 
Store a std::vector<WideString> object into this transaction.
| void scim::Transaction::put_data | ( | const char * | raw, | |
| size_t | bufsize | |||
| ) | 
Store a raw buffer into this transaction.
| void scim::Transaction::put_data | ( | const Transaction & | trans | ) | 
Store another Transaction object into this transaction.
| TransactionDataType scim::Transaction::get_data_type | ( | ) | const | 
Get the type of the data at current read position.
| bool scim::Transaction::get_command | ( | int & | cmd | ) | 
Get a command from current read position.
| bool scim::Transaction::get_data | ( | uint32 & | val | ) | 
Get an uint32 value from current read position.
| bool scim::Transaction::get_data | ( | String & | str | ) | 
Get a String from current read position.
| bool scim::Transaction::get_data | ( | WideString & | str | ) | 
Get a WideString from current read position.
| bool scim::Transaction::get_data | ( | AttributeList & | attrs | ) | 
Get an AttributeList from current read position.
| bool scim::Transaction::get_data | ( | PropertyList & | properties | ) | 
Get a PropertyList from current read position.
| bool scim::Transaction::get_data | ( | CommonLookupTable & | table | ) | 
Get a CommonLookupTable from current read position.
| bool scim::Transaction::get_data | ( | std::vector< uint32 > & | vec | ) | 
Get a std::vector<uint32> from current read position.
| bool scim::Transaction::get_data | ( | std::vector< String > & | vec | ) | 
Get a std::vector<String> from current read position.
| bool scim::Transaction::get_data | ( | std::vector< WideString > & | vec | ) | 
Get a std::vector<WideString> from current read position.
| bool scim::Transaction::get_data | ( | char ** | raw, | |
| size_t & | bufsize | |||
| ) | 
Get a raw buffer from current read position.
if raw == NULL then return the bufsize and skip this data. *raw should be deleted afterwards (do not use free!).
| bool scim::Transaction::get_data | ( | Transaction & | trans | ) | 
Get a Transaction object from current read position.
| bool scim::Transaction::skip_data | ( | ) | 
Skip one data from current read position.
| void scim::Transaction::rewind | ( | ) | 
Rewind the current read position, then the data can be read again.
| void scim::Transaction::clear | ( | ) | 
Clear the transaction, all data in this transaction will be freed.
| friend class TransactionReader  [friend] | 
 1.5.7.1
 1.5.7.1