libzypp 17.37.10

PluginExecutor.h
Go to the documentation of this file.
1/*---------------------------------------------------------------------\
2| ____ _ __ __ ___ |
3| |__ / \ / / . \ . \ |
4| / / \ V /| _/ _/ |
5| / /__ | | | | | | |
6| /_____||_| |_| |_| |
7| |
8\---------------------------------------------------------------------*/
11#ifndef ZYPP_PLUGINEXECUTOR_H
12#define ZYPP_PLUGINEXECUTOR_H
13
14#include <iosfwd>
15
16#include <zypp/base/PtrTypes.h>
17#include <zypp/PluginScript.h>
18
20 namespace zypp
21{
41 class ZYPP_API PluginExecutor
42 {
43 friend std::ostream & operator<<( std::ostream & str, const PluginExecutor & obj );
44 friend bool operator==( const PluginExecutor & lhs, const PluginExecutor & rhs );
45
46 public:
48 PluginExecutor();
49
51 ~PluginExecutor();
52
53 public:
55 explicit operator bool() const
56 { return !empty(); }
57
59 bool empty() const;
60
62 size_t size() const;
63
64 public:
71 void load( const Pathname & path_r );
72
76 void send( const PluginFrame & frame_r );
77
78 public:
79 class Impl;
80 private:
81 RW_pointer<Impl> _pimpl;
82 };
83
85 std::ostream & operator<<( std::ostream & str, const PluginExecutor & obj );
86
88 inline bool operator==( const PluginExecutor & lhs, const PluginExecutor & rhs )
89 { return ( lhs._pimpl == rhs._pimpl ); }
90
92 inline bool operator!=( const PluginExecutor & lhs, const PluginExecutor & rhs )
93 { return( ! operator==( lhs, rhs ) ); }
94
95} // namespace zypp
97#endif // ZYPP_PLUGINEXECUTOR_H
PluginScript.h
Impl
bool
zypp::PluginExecutor
Parallel execution of stateful PluginScripts.
Definition PluginExecutor.h:42
zypp::PluginExecutor::_pimpl
RW_pointer< Impl > _pimpl
Implementation class.
Definition PluginExecutor.h:81
zypp::PluginExecutor::operator!=
bool operator!=(const PluginExecutor &lhs, const PluginExecutor &rhs)
Comparison based on reference.
Definition PluginExecutor.h:92
zypp::PluginExecutor::PluginExecutor
PluginExecutor()
Default ctor: Empty plugin list.
Definition PluginExecutor.cc:161
zypp::PluginExecutor::empty
bool empty() const
Whether no plugins are waiting.
Definition PluginExecutor.cc:168
zypp::PluginExecutor::operator==
friend bool operator==(const PluginExecutor &lhs, const PluginExecutor &rhs)
zypp::PluginFrame
Command frame for communication with PluginScript.
Definition PluginFrame.h:42
zypp::filesystem::Pathname
Pathname.
Definition Pathname.h:47
str
String related utilities and Regular expression matching.
zypp
Easy-to use interface to the ZYPP dependency resolver.
Definition Application.cc:20
zypp::operator<<
std::ostream & operator<<(std::ostream &str, const SerialNumber &obj)
Definition SerialNumber.cc:52
zypp::ZYPP_API
const Arch Arch_armv7hnl Arch_armv7nhl ZYPP_API
Definition Arch.h:247
zypp::RW_pointer
Wrapper for const correct access via Smart pointer types.
Definition PtrTypes.h:293
PtrTypes.h