53 {ecMTX.Lock(); Delim = dlm; ecMTX.UnLock();
return *
this;}
64int Get(std::string& ecm,
bool rst=
true);
72bool hasMsg()
const {ecMTX.Lock();
bool hm = !ecMsg.empty();
73 ecMTX.UnLock();
return hm;
82std::string
Msg() {ecMTX.Lock(); std::string m = ecMsg; ecMTX.UnLock();
95void Msg(
const char* pfx,
const char* txt1,
96 const char* txt2=0,
const char* txt3=0,
97 const char* txt4=0,
const char* txt5=0);
110void Msgf(
const char *pfx,
const char *fmt, ...);
123void MsgVA(
const char *pfx,
const char *fmt, std::va_list aP);
136void MsgVec(
const char* pfx,
char const*
const* vecP,
int vecN);
145void Set(
int ecc,
const char* ecm=
"")
146 {ecMTX.Lock(); eCode = ecc;
if (ecm) ecMsg = ecm; ecMTX.UnLock();}
148void Set(
int ecc, std::string& ecm)
149 {ecMTX.Lock(); eCode = ecc; ecMsg = ecm; ecMTX.UnLock();}
161int SetErrno(
int ecc,
int ret=-1,
const char *alt=0);
168 {ecMTX.Lock(); eCode = rhs; ecMTX.UnLock();
return *
this;}
171 {ecMTX.Lock(); ecMsg = rhs; ecMTX.UnLock();
return *
this;}
174 {ecMTX.Lock(); ecMsg = rhs; ecMTX.UnLock();
return *
this;}
177 {ecMTX.Lock(); ecMsg = rhs.ecMsg; eCode = rhs.eCode; ecMTX.UnLock();
181 XrdOucECMsg(
const char *msgid=0) : msgID(msgid), eCode(0), Delim(0) {}
186void Setup(
const char *pfx,
int n);
void MsgVA(const char *pfx, const char *fmt, std::va_list aP)
XrdOucECMsg & operator=(const int rhs)
Assignment operators for convenience.
int SetErrno(int ecc, int ret=-1, const char *alt=0)
XrdOucECMsg(const char *msgid=0)
void Set(int ecc, const char *ecm="")
XrdOucECMsg & Append(char dlm='\n')
int Get(std::string &ecm, bool rst=true)
void Set(int ecc, std::string &ecm)
XrdOucECMsg & operator=(XrdOucECMsg &rhs)
void MsgVec(const char *pfx, char const *const *vecP, int vecN)
XrdOucECMsg & operator=(const char *rhs)
void Msgf(const char *pfx, const char *fmt,...)
XrdOucECMsg & operator=(const std::string &rhs)