/usr/include/odil/pdu/Object.h is in libodil0-dev 0.4.1-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 | /*************************************************************************
* odil - Copyright (C) Universite de Strasbourg
* Distributed under the terms of the CeCILL-B license, as published by
* the CEA-CNRS-INRIA. Refer to the LICENSE file or to
* http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
* for details.
************************************************************************/
#ifndef _da2270e3_d393_415a_9c5c_6253152ed9da
#define _da2270e3_d393_415a_9c5c_6253152ed9da
#include <ostream>
#include "odil/pdu/Item.h"
namespace odil
{
namespace pdu
{
/**
* @brief Base class for all PDU-related high-level objects (PDU, items and
* sub-items).
*/
class Object
{
public:
/// @brief Destructor, makes the type polymorphic.
virtual ~Object();
/// @brief Get the underlying item.
Item const & get_item() const;
protected:
Item _item;
/// @brief Compute the value of the length field of the object.
uint32_t _compute_length() const;
/// @brief Compute the full size of an item.
uint32_t _compute_length(Item const & item) const;
/// @brief Compute the full size of a field.
uint32_t _compute_length(Item::Field const & field) const;
};
/// @brief Dump the PDU-object in its binary form.
std::ostream &
operator<<(std::ostream & stream, Object const & object);
}
}
#endif // _da2270e3_d393_415a_9c5c_6253152ed9da
|