Free Electron
FactionFilter.h
Go to the documentation of this file.
1 /* Copyright (C) 2003-2021 Free Electron Organization
2  Any use of this software requires a license. If a valid license
3  was not distributed with this file, visit freeelectron.org. */
4 
5 /** @file */
6 
7 #ifndef __intelligence_FactionFilter_h__
8 #define __intelligence_FactionFilter_h__
9 namespace fe
10 {
11 namespace ext
12 {
13 
14 /**************************************************************************//**
15  @brief Test a Record for appropriate Faction
16 
17  @ingroup intelligence
18 
19  Returns non-zero if the test Record has a faction matching the
20  interest of the refernce Record.
21 *//***************************************************************************/
22 class FE_DL_EXPORT FactionFilter: virtual public FilterI
23 {
24  public:
25 
26  //* as FilterI
27 virtual void configure(WeakRecord record);
28 virtual I32 test(WeakRecord rRecord);
29 
30  private:
31  Scanner m_scannerRV;
32 
33  WeakRecord m_controlRecord;
34  I32 m_ignoreFriend;
35  I32 m_ignoreNeutral;
36  I32 m_ignoreEnemy;
37  String m_faction;
38 };
39 
40 } /* namespace ext */
41 } /* namespace fe */
42 
43 #endif /* __intelligence_FactionFilter_h__ */
kernel
Definition: namespace.dox:3
Test a Record for appropriate Faction.
Definition: FactionFilter.h:22
A test on a Record.
Definition: FilterI.h:20
Scanner RecordView.
Definition: lab/intelligence/Scanner.h:19
Automatically reference-counted string container.
Definition: String.h:128
Non-persistent reference to an instance of a Layout.
Definition: WeakRecordSB.h:17