Action_Thermostats
Adding_Graph_to_ChangeBondActions
Adding_MD_integration_tests
Adding_StructOpt_integration_tests
AutomationFragmentation_failures
Candidate_v1.6.1
ChemicalSpaceEvaluator
Enhanced_StructuralOptimization
Enhanced_StructuralOptimization_continued
Example_ManyWaysToTranslateAtom
Exclude_Hydrogens_annealWithBondGraph
Fix_Verbose_Codepatterns
ForceAnnealing_with_BondGraph
ForceAnnealing_with_BondGraph_continued
ForceAnnealing_with_BondGraph_continued_betteresults
ForceAnnealing_with_BondGraph_contraction-expansion
Gui_displays_atomic_force_velocity
JobMarket_RobustOnKillsSegFaults
JobMarket_StableWorkerPool
PythonUI_with_named_parameters
Recreated_GuiChecks
StoppableMakroAction
TremoloParser_IncreasedPrecision
TremoloParser_MultipleTimesteps
Last change
on this file since 70f2a1 was 9c2cb3, checked in by Frederik Heber <heber@…>, 13 years ago |
FillPredicate is working base class, where FillPredicateBase.hpp is the underlying interface.
- FillPredicate is alike to Shape in design, containing a implementation
pointer which has all the functionality and we just point to it.
|
-
Property mode
set to
100644
|
File size:
952 bytes
|
Rev | Line | |
---|
[9c2cb3] | 1 | /*
|
---|
| 2 | * FillPredicate.hpp
|
---|
| 3 | *
|
---|
| 4 | * Created on: Jan 16, 2012
|
---|
| 5 | * Author: heber
|
---|
| 6 | */
|
---|
| 7 |
|
---|
| 8 | #ifndef FILLPREDICATE_HPP_
|
---|
| 9 | #define FILLPREDICATE_HPP_
|
---|
| 10 |
|
---|
| 11 |
|
---|
| 12 | // include config.h
|
---|
| 13 | #ifdef HAVE_CONFIG_H
|
---|
| 14 | #include <config.h>
|
---|
| 15 | #endif
|
---|
| 16 |
|
---|
| 17 | #include "Filling/NodeTypes.hpp"
|
---|
| 18 |
|
---|
| 19 | #include <boost/shared_ptr.hpp>
|
---|
| 20 |
|
---|
| 21 | class FillPredicateBase;
|
---|
| 22 |
|
---|
| 23 | /** This class defines the interface for all derived classes.
|
---|
| 24 | *
|
---|
| 25 | * This is just a functor of a predicate function.
|
---|
| 26 | *
|
---|
| 27 | */
|
---|
| 28 | class FillPredicate
|
---|
| 29 | {
|
---|
| 30 | public:
|
---|
| 31 | typedef boost::shared_ptr<FillPredicateBase> impl_ptr;
|
---|
| 32 | friend impl_ptr getFillPredicateImpl(const FillPredicate&);
|
---|
| 33 |
|
---|
| 34 | FillPredicate(const FillPredicate &ptr);
|
---|
| 35 | FillPredicate(impl_ptr);
|
---|
| 36 | ~FillPredicate();
|
---|
| 37 | bool operator()(const Node &n) const;
|
---|
| 38 |
|
---|
| 39 | protected:
|
---|
| 40 | impl_ptr getImpl() const;
|
---|
| 41 |
|
---|
| 42 | private:
|
---|
| 43 | impl_ptr impl;
|
---|
| 44 | };
|
---|
| 45 |
|
---|
| 46 | FillPredicate AlwaysFillPredicate();
|
---|
| 47 | FillPredicate NeverFillPredicate();
|
---|
| 48 |
|
---|
| 49 | FillPredicate::impl_ptr getFillPredicateImpl(const FillPredicate &f);
|
---|
| 50 |
|
---|
| 51 | #endif /* FILLPREDICATE_HPP_ */
|
---|
Note:
See
TracBrowser
for help on using the repository browser.