src
rqt_console
filters
filter_collection.py
Go to the documentation of this file.
1
# Software License Agreement (BSD License)
2
#
3
# Copyright (c) 2012, Willow Garage, Inc.
4
# All rights reserved.
5
#
6
# Redistribution and use in source and binary forms, with or without
7
# modification, are permitted provided that the following conditions
8
# are met:
9
#
10
# * Redistributions of source code must retain the above copyright
11
# notice, this list of conditions and the following disclaimer.
12
# * Redistributions in binary form must reproduce the above
13
# copyright notice, this list of conditions and the following
14
# disclaimer in the documentation and/or other materials provided
15
# with the distribution.
16
# * Neither the name of Willow Garage, Inc. nor the names of its
17
# contributors may be used to endorse or promote products derived
18
# from this software without specific prior written permission.
19
#
20
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
21
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
22
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
23
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
24
# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
25
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
26
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
27
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
28
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
29
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
30
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
31
# POSSIBILITY OF SUCH DAMAGE.
32
33
34
class
FilterCollection
:
35
36
"""
37
Collection of filters to test messages against.
38
"""
39
40
def
__init__
(self):
41
self.
_filters
= []
42
43
def
test_message
(self, message, default=False):
44
"""
45
Test if the message matches any filter.
46
:param message: message to be tested against the filters, ''Message''
47
:param default: return value when there is no active filter, ''bool''
48
:returns: True if the message matches any filter, ''bool''
49
"""
50
match = default
51
for
f
in
self.
_filters
:
52
if
f.is_enabled()
and
f.has_filter():
53
if
f.test_message(message):
54
return
True
55
else
:
56
match =
False
57
return
match
58
59
def
append
(self, filter):
60
self.
_filters
.
append
(filter)
61
62
def
count_enabled_filters
(self):
63
enabled = [f
for
f
in
self.
_filters
if
f.is_enabled()]
64
return
len(enabled)
65
66
def
__len__
(self):
67
return
len(self.
_filters
)
68
69
def
__delitem__
(self, index):
70
del self.
_filters
[index]
rqt_console.filters.filter_collection.FilterCollection.__len__
def __len__(self)
Definition:
filter_collection.py:66
rqt_console.filters.filter_collection.FilterCollection.append
def append(self, filter)
Definition:
filter_collection.py:59
rqt_console.filters.filter_collection.FilterCollection
Definition:
filter_collection.py:34
rqt_console.filters.filter_collection.FilterCollection.__init__
def __init__(self)
Definition:
filter_collection.py:40
rqt_console.filters.filter_collection.FilterCollection._filters
_filters
Definition:
filter_collection.py:41
rqt_console.filters.filter_collection.FilterCollection.__delitem__
def __delitem__(self, index)
Definition:
filter_collection.py:69
rqt_console.filters.filter_collection.FilterCollection.count_enabled_filters
def count_enabled_filters(self)
Definition:
filter_collection.py:62
rqt_console.filters.filter_collection.FilterCollection.test_message
def test_message(self, message, default=False)
Definition:
filter_collection.py:43
rqt_console
Author(s): Aaron Blasdel
autogenerated on Sun Oct 15 2023 02:24:45