glibmm 2.80.0
Public Member Functions | Static Public Member Functions | Protected Member Functions | Related Functions | List of all members
Gio::ZlibCompressor Class Reference

ZlibCompressor - Zlib compressor. More...

#include <giomm/zlibcompressor.h>

Inheritance diagram for Gio::ZlibCompressor:
Inheritance graph
[legend]

Public Member Functions

 ZlibCompressor (ZlibCompressor && src) noexcept
 
ZlibCompressoroperator= (ZlibCompressor && src) noexcept
 
 ~ZlibCompressor () noexcept override
 
GZlibCompressor * gobj ()
 Provides access to the underlying C GObject. More...
 
const GZlibCompressor * gobj () const
 Provides access to the underlying C GObject. More...
 
GZlibCompressor * gobj_copy ()
 Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs. More...
 
Glib::RefPtr< FileInfoget_file_info ()
 Returns the ZlibCompressor::property_file_info() property. More...
 
Glib::RefPtr< const FileInfoget_file_info () const
 Returns the ZlibCompressor::property_file_info() property. More...
 
void set_file_info (const Glib::RefPtr< FileInfo > & file_info)
 Sets file_info in compressor. More...
 
Glib::PropertyProxy< Glib::RefPtr< FileInfo > > property_file_info ()
 If set to a non-nullptr FileInfo object, and ZlibCompressor::property_format() is Gio::ZlibCompressorFormat::GZIP, the compressor will write the file name and modification time from the file info to the GZIP header. More...
 
Glib::PropertyProxy_ReadOnly< Glib::RefPtr< FileInfo > > property_file_info () const
 If set to a non-nullptr FileInfo object, and ZlibCompressor::property_format() is Gio::ZlibCompressorFormat::GZIP, the compressor will write the file name and modification time from the file info to the GZIP header. More...
 
Glib::PropertyProxy_ReadOnly< ZlibCompressorFormatproperty_format () const
 The format of the compressed data. More...
 
Glib::PropertyProxy_ReadOnly< int > property_level () const
 The level of compression from 0 (no compression) to 9 (most compression). More...
 
- Public Member Functions inherited from Glib::Object
 Object (const Object &)=delete
 
Objectoperator= (const Object &)=delete
 
 Object (Object && src) noexcept
 
Objectoperator= (Object && src) noexcept
 
void * get_data (const QueryQuark & key)
 
void set_data (const Quark & key, void *data)
 
void set_data_with_c_callback (const Quark & key, void *data, GDestroyNotify notify)
 
void set_data (const Quark & key, void *data, DestroyNotify notify)
 Prefer set_data_with_c_callback() with a callback with C linkage. More...
 
void remove_data (const QueryQuark & quark)
 
void * steal_data (const QueryQuark & quark)
 
- Public Member Functions inherited from Glib::ObjectBase
 ObjectBase (const ObjectBase &)=delete
 
ObjectBaseoperator= (const ObjectBase &)=delete
 
void set_property_value (const Glib::ustring & property_name, const Glib::ValueBase & value)
 You probably want to use a specific property_*() accessor method instead. More...
 
void get_property_value (const Glib::ustring & property_name, Glib::ValueBase & value) const
 You probably want to use a specific property_*() accessor method instead. More...
 
template<class PropertyType >
void set_property (const Glib::ustring & property_name, const PropertyType & value)
 You probably want to use a specific property_*() accessor method instead. More...
 
template<class PropertyType >
void get_property (const Glib::ustring & property_name, PropertyType & value) const
 You probably want to use a specific property_*() accessor method instead. More...
 
template<class PropertyType >
PropertyType get_property (const Glib::ustring & property_name) const
 You probably want to use a specific property_*() accessor method instead. More...
 
sigc::connection connect_property_changed (const Glib::ustring & property_name, const sigc::slot< void()> & slot)
 You can use the signal_changed() signal of the property proxy instead. More...
 
sigc::connection connect_property_changed (const Glib::ustring & property_name, sigc::slot< void()> && slot)
 You can use the signal_changed() signal of the property proxy instead. More...
 
void freeze_notify ()
 Increases the freeze count on object. More...
 
void thaw_notify ()
 Reverts the effect of a previous call to freeze_notify(). More...
 
virtual void reference () const
 Increment the reference count for this object. More...
 
virtual void unreference () const
 Decrement the reference count for this object. More...
 
GObject * gobj ()
 Provides access to the underlying C GObject. More...
 
const GObject * gobj () const
 Provides access to the underlying C GObject. More...
 
GObject * gobj_copy () const
 Give a ref-ed copy to someone. Use for direct struct access. More...
 
- Public Member Functions inherited from Gio::Converter
 Converter (Converter && src) noexcept
 
Converteroperator= (Converter && src) noexcept
 
 ~Converter () noexcept override
 
GConverter * gobj ()
 Provides access to the underlying C GObject. More...
 
const GConverter * gobj () const
 Provides access to the underlying C GObject. More...
 
Result convert (const void * inbuf, gsize inbuf_size, void * outbuf, gsize outbuf_size, Flags flags, gsize & bytes_read, gsize & bytes_written)
 This is the main operation used when converting data. More...
 
void reset ()
 Resets all internal state in the converter, making it behave as if it was just created. More...
 
- Public Member Functions inherited from Glib::Interface
 Interface ()
 A Default constructor. More...
 
 Interface (Interface && src) noexcept
 
Interfaceoperator= (Interface && src) noexcept
 
 Interface (const Glib::Interface_Class & interface_class)
 Called by constructors of derived classes. More...
 
 Interface (GObject * castitem)
 Called by constructors of derived classes. More...
 
 ~Interface () noexcept override
 
 Interface (const Interface &)=delete
 
Interfaceoperator= (const Interface &)=delete
 
GObject * gobj ()
 
const GObject * gobj () const
 

Static Public Member Functions

static GType get_type ()
 Get the GType for this class, for use with the underlying GObject type system. More...
 
static Glib::RefPtr< ZlibCompressorcreate (ZlibCompressorFormat format, int level)
 Creates a new ZlibCompressor. More...
 
- Static Public Member Functions inherited from Gio::Converter
static void add_interface (GType gtype_implementer)
 
static GType get_type ()
 Get the GType for this class, for use with the underlying GObject type system. More...
 

Protected Member Functions

 ZlibCompressor (ZlibCompressorFormat format, int level)
 
- Protected Member Functions inherited from Glib::Object
 Object ()
 
 Object (const Glib::ConstructParams & construct_params)
 
 Object (GObject * castitem)
 
 ~Object () noexcept override
 
- Protected Member Functions inherited from Glib::ObjectBase
 ObjectBase ()
 This default constructor is called implicitly from the constructor of user-derived classes, even if, for instance, Gtk::Button calls a different ObjectBase constructor. More...
 
 ObjectBase (const char * custom_type_name)
 A derived constructor always overrides this choice. More...
 
 ObjectBase (const std::type_info & custom_type_info)
 This constructor is a special feature to allow creation of derived types on the fly, without having to use g_object_new() manually. More...
 
 ObjectBase (ObjectBase && src) noexcept
 
ObjectBaseoperator= (ObjectBase && src) noexcept
 
virtual ~ObjectBase () noexcept=0
 
void initialize (GObject * castitem)
 
void initialize_move (GObject * castitem, Glib::ObjectBase * previous_wrapper)
 
- Protected Member Functions inherited from Gio::Converter
 Converter ()
 You should derive from this class to use it. More...
 
virtual Result convert_vfunc (const void * inbuf, gsize inbuf_size, void * outbuf, gsize outbuf_size, Flags flags, gsize & bytes_read, gsize & bytes_written)
 
virtual void reset_vfunc ()
 

Related Functions

(Note that these are not member functions.)

Glib::RefPtr< Gio::ZlibCompressorwrap (GZlibCompressor * object, bool take_copy=false)
 A Glib::wrap() method for this object. More...
 

Additional Inherited Members

- Public Types inherited from Glib::Object
using DestroyNotify = void(*)(gpointer data)
 
- Public Types inherited from Gio::Converter
enum class  Result {
  Result::ERROR ,
  Result::CONVERTED ,
  Result::FINISHED ,
  Result::FLUSHED
}
 Results returned from g_converter_convert(). More...
 
enum class  Flags {
  Flags::NO_FLAGS = 0x0 ,
  Flags::INPUT_AT_END = (1 << 0) ,
  Flags::FLUSH = (1 << 1)
}
 Flags used when calling a g_converter_convert(). More...
 

Detailed Description

ZlibCompressor - Zlib compressor.

ZlibCompressor is an implementation of Converter that compresses data using zlib.

Since glibmm 2.34:

Constructor & Destructor Documentation

◆ ZlibCompressor() [1/2]

Gio::ZlibCompressor::ZlibCompressor ( ZlibCompressor &&  src)
noexcept

◆ ~ZlibCompressor()

Gio::ZlibCompressor::~ZlibCompressor ( )
overridenoexcept

◆ ZlibCompressor() [2/2]

Gio::ZlibCompressor::ZlibCompressor ( ZlibCompressorFormat  format,
int  level 
)
explicitprotected

Member Function Documentation

◆ create()

static Glib::RefPtr< ZlibCompressor > Gio::ZlibCompressor::create ( ZlibCompressorFormat  format,
int  level 
)
static

Creates a new ZlibCompressor.

Since glibmm 2.24:
Parameters
formatThe format to use for the compressed data.
levelCompression level (0-9), -1 for default.
Returns
A new ZlibCompressor.

◆ get_file_info() [1/2]

Glib::RefPtr< FileInfo > Gio::ZlibCompressor::get_file_info ( )

Returns the ZlibCompressor::property_file_info() property.

Since glibmm 2.26:
Returns
A FileInfo, or nullptr.

◆ get_file_info() [2/2]

Glib::RefPtr< const FileInfo > Gio::ZlibCompressor::get_file_info ( ) const

Returns the ZlibCompressor::property_file_info() property.

Since glibmm 2.26:
Returns
A FileInfo, or nullptr.

◆ get_type()

static GType Gio::ZlibCompressor::get_type ( )
static

Get the GType for this class, for use with the underlying GObject type system.

◆ gobj() [1/2]

GZlibCompressor * Gio::ZlibCompressor::gobj ( )
inline

Provides access to the underlying C GObject.

◆ gobj() [2/2]

const GZlibCompressor * Gio::ZlibCompressor::gobj ( ) const
inline

Provides access to the underlying C GObject.

◆ gobj_copy()

GZlibCompressor * Gio::ZlibCompressor::gobj_copy ( )

Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.

◆ operator=()

ZlibCompressor & Gio::ZlibCompressor::operator= ( ZlibCompressor &&  src)
noexcept

◆ property_file_info() [1/2]

Glib::PropertyProxy< Glib::RefPtr< FileInfo > > Gio::ZlibCompressor::property_file_info ( )

If set to a non-nullptr FileInfo object, and ZlibCompressor::property_format() is Gio::ZlibCompressorFormat::GZIP, the compressor will write the file name and modification time from the file info to the GZIP header.

Since glibmm 2.26:
Returns
A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.

◆ property_file_info() [2/2]

Glib::PropertyProxy_ReadOnly< Glib::RefPtr< FileInfo > > Gio::ZlibCompressor::property_file_info ( ) const

If set to a non-nullptr FileInfo object, and ZlibCompressor::property_format() is Gio::ZlibCompressorFormat::GZIP, the compressor will write the file name and modification time from the file info to the GZIP header.

Since glibmm 2.26:
Returns
A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

◆ property_format()

Glib::PropertyProxy_ReadOnly< ZlibCompressorFormat > Gio::ZlibCompressor::property_format ( ) const

The format of the compressed data.

Since glibmm 2.24:

Default value: Gio::ZlibCompressorFormat::ZLIB

Returns
A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

◆ property_level()

Glib::PropertyProxy_ReadOnly< int > Gio::ZlibCompressor::property_level ( ) const

The level of compression from 0 (no compression) to 9 (most compression).

-1 for the default level.

Since glibmm 2.24:

Default value: -1

Returns
A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

◆ set_file_info()

void Gio::ZlibCompressor::set_file_info ( const Glib::RefPtr< FileInfo > &  file_info)

Sets file_info in compressor.

If non-nullptr, and compressor's ZlibCompressor::property_format() property is Gio::ZlibCompressorFormat::GZIP, it will be used to set the file name and modification time in the GZIP header of the compressed data.

Note
it is an error to call this function while a compression is in progress; it may only be called immediately after creation of compressor, or after resetting it with g_converter_reset().
Since glibmm 2.26:
Parameters
file_infoA FileInfo.

Friends And Related Function Documentation

◆ wrap()

Glib::RefPtr< Gio::ZlibCompressor > wrap ( GZlibCompressor *  object,
bool  take_copy = false 
)
related

A Glib::wrap() method for this object.

Parameters
objectThe C instance.
take_copyFalse if the result should take ownership of the C instance. True if it should take a new copy or ref.
Returns
A C++ instance that wraps this C instance.