00001 inline string IPC::Mensageiro::meuIdentificador() {
00002 passwd* info = getpwuid(meuUID);
00003 return string(info->pw_name) + " (" + eu + ')';
00004 }
00005
00006 inline string IPC::Mensageiro::identificadorDoOutro() {
00007 passwd* info = getpwuid(outroUID);
00008 return string(info->pw_name) + " (" + outro + ')';
00009 }
00010
00011 inline string IPC::Mensageiro::stringRecebida() {
00012 return leBasico(eu);
00013 }
00014
00015 inline int IPC::Mensageiro::intRecebido() {
00016 return leBasicoInt(eu);
00017 }
00018
00019 inline char IPC::Mensageiro::charRecebido() {
00020 return leBasicoChar(eu);
00021 }
00022
00023 inline void IPC::Mensageiro::envia(string const& mensagem) {
00024 escreveBasico(outro, mensagem);
00025 }
00026
00027 inline void IPC::Mensageiro::envia(int const valor) {
00028 escreveBasicoInt(outro, valor);
00029 }
00030
00031 inline void IPC::Mensageiro::envia(char const c) {
00032 escreveBasicoChar(outro, c);
00033 }
00034
00035 inline char IPC::Mensageiro::leBasicoChar(int const tipo, bool const espera) {
00036 return leBasico(tipo, espera)[0];
00037 }
00038
00039 inline int IPC::Mensageiro::leBasicoInt(int const tipo, bool const espera) {
00040
00041 return atoi(leBasico(tipo, espera).c_str());
00042 }
00043
00044 inline void IPC::Mensageiro::escreveBasicoChar(int const tipo, char const c) {
00045
00046 char cadeia[2] = {'\0', '\0'};
00047 cadeia[0] = c;
00048 escreveBasico(tipo, cadeia);
00049 }
00050
00051 inline void IPC::Mensageiro::escreveBasicoInt(int const tipo,
00052 int const valor) {
00053
00054 char cadeia[40];
00055 sprintf(cadeia, "%d", valor);
00056 escreveBasico(tipo, cadeia);
00057 }