IppAttribute
return IppAttribute::length() + 2 + name.length();
IppAttribute::output(os);
IppAttribute::print(os);
return IppAttribute::length() + 2;
IppAttribute::output(os);
for (list<IppAttribute *>::const_iterator it = attrs.begin(); it != attrs.end(); it++) {
IppAttribute::IppAttribute(IPP_TAG t)
attrs.push_back(new IppAttribute((IPP_TAG)tag));
int IppAttribute::length() const
istream &IppAttribute::input(istream &is)
ostream &IppAttribute::output(ostream &os) const
for (list<IppAttribute *>::const_iterator it = attrs.begin(); it != attrs.end(); it++) {
attrs.push_back(new IppAttribute(tag));
ostream &IppAttribute::print(ostream &os) const
for (list<IppAttribute *>::const_iterator it = attrs.begin(); it != attrs.end(); it++) {
: IppAttribute(t)
for (list<IppAttribute *>::const_iterator it = attrs.begin(); it != attrs.end(); it++) {
: IppAttribute(t), name(s ? s : "")
class IppAttribute {
IppAttribute(IPP_TAG);
virtual ~IppAttribute() {}
friend istream& operator >> (istream &is, IppAttribute &attr)
friend ostream& operator << (ostream &os, const IppAttribute &attr)
class IppNamedAttribute : public IppAttribute {
list<IppAttribute *> attrs;