Rosetta 3.4
Public Types | Public Member Functions | Protected Types | Protected Member Functions
core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library > Class Template Reference

Librarian template for sorting through and extracting desired fragments. More...

#include <Librarian.hh>

Collaboration diagram for core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >:
Collaboration graph
[legend]

List of all members.

Public Types

typedef core::Size Size
typedef Library::BookIterator BookIterator
typedef Library::BookConstIterator BookConstIterator
typedef Library::Book Book
typedef Book::PageConstIterator PageConstIterator
typedef Book::PageIterator PageIterator
typedef Book::Page Page
typedef ExtentGenerator::Extent Extent
typedef
utility::pointer::owning_ptr
< ExtentEvaluator
ExtentEvalOP
typedef
utility::pointer::owning_ptr
< ExtentEvaluator const > 
ExtentEvalCOP
typedef
utility::pointer::owning_ptr
< ExtentGenerator > 
ExtentGenOP
typedef
utility::pointer::owning_ptr
< ExtentGenerator const > 
ExtentGenCOP
typedef utility::vector1
< Bookmark
Bookmarks
typedef Bookmarks::const_iterator BookmarkConstIterator
typedef Bookmarks::iterator BookmarkIterator

Public Member Functions

 Librarian ()
 default constructor
virtual ~Librarian ()
 default destructor
bool catalog (Library const &library)
 create sorted list corresponding to fragments in Library
template<typename LessThan >
bool catalog (Library const &library, LessThan const &lt)
 create sorted list corresponding to fragments in Library
void add_extent_gen (ExtentGenCOP const &gen)
 add an extent generator
void clear_extent_gen ()
 clear list of generators
void add_extent_eval (ExtentEvalCOP val)
 add extent evaluator
void clear_extent_eval ()
 clear list of evaluators

Protected Types

typedef utility::vector1
< ExtentGenOP
ExtentGenOPs
typedef utility::vector1
< ExtentEvalOP
ExtentEvalOPs

Protected Member Functions

bool evaluate_extent (Extent const &extent, Bookmark &mark)
 evaluate a fragment starting from Page at iterator
Bookmarks const & bookmarks () const
 get the current bookmark heap
Bookmarksbookmarks ()
 get the current bookmark heap
ExtentGenOPs const & extent_gen () const
 the list of extent generators
ExtentGenOPsextent_gen ()
 the list of extent generators
ExtentEvalOPs const & extent_eval () const
 the list of extent evaluators
ExtentEvalOPsextent_eval ()
 the list of extent evaluators

Detailed Description

template<typename Bookmark, typename ExtentEvaluator, typename ExtentGenerator, typename Library>
class core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >

Librarian template for sorting through and extracting desired fragments.


Member Typedef Documentation

template<typename Bookmark, typename ExtentEvaluator, typename ExtentGenerator, typename Library>
typedef Library::Book core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >::Book
template<typename Bookmark, typename ExtentEvaluator, typename ExtentGenerator, typename Library>
typedef Library::BookConstIterator core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >::BookConstIterator
template<typename Bookmark, typename ExtentEvaluator, typename ExtentGenerator, typename Library>
typedef Library::BookIterator core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >::BookIterator
template<typename Bookmark, typename ExtentEvaluator, typename ExtentGenerator, typename Library>
typedef Bookmarks::const_iterator core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >::BookmarkConstIterator
template<typename Bookmark, typename ExtentEvaluator, typename ExtentGenerator, typename Library>
typedef Bookmarks::iterator core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >::BookmarkIterator
template<typename Bookmark, typename ExtentEvaluator, typename ExtentGenerator, typename Library>
typedef utility::vector1< Bookmark > core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >::Bookmarks
template<typename Bookmark, typename ExtentEvaluator, typename ExtentGenerator, typename Library>
typedef ExtentGenerator::Extent core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >::Extent
template<typename Bookmark, typename ExtentEvaluator, typename ExtentGenerator, typename Library>
typedef utility::pointer::owning_ptr< ExtentEvaluator const > core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >::ExtentEvalCOP
template<typename Bookmark, typename ExtentEvaluator, typename ExtentGenerator, typename Library>
typedef utility::pointer::owning_ptr< ExtentEvaluator > core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >::ExtentEvalOP
template<typename Bookmark, typename ExtentEvaluator, typename ExtentGenerator, typename Library>
typedef utility::vector1< ExtentEvalOP > core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >::ExtentEvalOPs [protected]
template<typename Bookmark, typename ExtentEvaluator, typename ExtentGenerator, typename Library>
typedef utility::pointer::owning_ptr< ExtentGenerator const > core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >::ExtentGenCOP
template<typename Bookmark, typename ExtentEvaluator, typename ExtentGenerator, typename Library>
typedef utility::pointer::owning_ptr< ExtentGenerator > core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >::ExtentGenOP
template<typename Bookmark, typename ExtentEvaluator, typename ExtentGenerator, typename Library>
typedef utility::vector1< ExtentGenOP > core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >::ExtentGenOPs [protected]
template<typename Bookmark, typename ExtentEvaluator, typename ExtentGenerator, typename Library>
typedef Book::Page core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >::Page
template<typename Bookmark, typename ExtentEvaluator, typename ExtentGenerator, typename Library>
typedef Book::PageConstIterator core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >::PageConstIterator
template<typename Bookmark, typename ExtentEvaluator, typename ExtentGenerator, typename Library>
typedef Book::PageIterator core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >::PageIterator
template<typename Bookmark, typename ExtentEvaluator, typename ExtentGenerator, typename Library>
typedef core::Size core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >::Size

Constructor & Destructor Documentation

template<typename Bookmark, typename ExtentEvaluator, typename ExtentGenerator, typename Library>
core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >::Librarian ( ) [inline]

default constructor

template<typename Bookmark, typename ExtentEvaluator, typename ExtentGenerator, typename Library>
virtual core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >::~Librarian ( ) [inline, virtual]

default destructor


Member Function Documentation

template<typename Bookmark, typename ExtentEvaluator, typename ExtentGenerator, typename Library>
void core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >::add_extent_eval ( ExtentEvalCOP  val) [inline]

add extent evaluator

template<typename Bookmark, typename ExtentEvaluator, typename ExtentGenerator, typename Library>
void core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >::add_extent_gen ( ExtentGenCOP const &  gen) [inline]

add an extent generator

template<typename Bookmark, typename ExtentEvaluator, typename ExtentGenerator, typename Library>
Bookmarks const& core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >::bookmarks ( ) const [inline, protected]

get the current bookmark heap

template<typename Bookmark, typename ExtentEvaluator, typename ExtentGenerator, typename Library>
Bookmarks& core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >::bookmarks ( ) [inline, protected]

get the current bookmark heap

template<typename Bookmark, typename ExtentEvaluator, typename ExtentGenerator, typename Library>
template<typename LessThan >
bool core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >::catalog ( Library const &  library,
LessThan const &  lt 
) [inline]

create sorted list corresponding to fragments in Library

Template Parameters:
LessThanpredicate Pr( left, right ) evaluating left < right for Bookmarks
Returns:
true if creation successful, false otherwise (e.g. no ExtentEvaluators or ExtentGenerators found)
template<typename Bookmark, typename ExtentEvaluator, typename ExtentGenerator, typename Library>
bool core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >::catalog ( Library const &  library) [inline]

create sorted list corresponding to fragments in Library

uses Bookmark '<' for evaluation

Returns:
true if creation successful, false otherwise (e.g. no ExtentEvaluators or ExtentGenerators found)

Referenced by core::fragment::picking_old::concepts::Librarian< scores::VallFragmentScore, eval::VallFragmentEval, gen::VallFragmentGen, VallLibrary >::catalog().

template<typename Bookmark, typename ExtentEvaluator, typename ExtentGenerator, typename Library>
void core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >::clear_extent_eval ( ) [inline]

clear list of evaluators

template<typename Bookmark, typename ExtentEvaluator, typename ExtentGenerator, typename Library>
void core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >::clear_extent_gen ( ) [inline]

clear list of generators

template<typename Bookmark, typename ExtentEvaluator, typename ExtentGenerator, typename Library>
bool core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >::evaluate_extent ( Extent const &  extent,
Bookmark mark 
) [inline, protected]

evaluate a fragment starting from Page at iterator

Returns:
Bookmark containing scores for fragment
Remarks:
at least one helper needs to score the fragment extent

Referenced by core::fragment::picking_old::concepts::Librarian< scores::VallFragmentScore, eval::VallFragmentEval, gen::VallFragmentGen, VallLibrary >::catalog().

template<typename Bookmark, typename ExtentEvaluator, typename ExtentGenerator, typename Library>
ExtentEvalOPs const& core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >::extent_eval ( ) const [inline, protected]

the list of extent evaluators

template<typename Bookmark, typename ExtentEvaluator, typename ExtentGenerator, typename Library>
ExtentEvalOPs& core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >::extent_eval ( ) [inline, protected]

the list of extent evaluators

template<typename Bookmark, typename ExtentEvaluator, typename ExtentGenerator, typename Library>
ExtentGenOPs const& core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >::extent_gen ( ) const [inline, protected]

the list of extent generators

template<typename Bookmark, typename ExtentEvaluator, typename ExtentGenerator, typename Library>
ExtentGenOPs& core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >::extent_gen ( ) [inline, protected]

the list of extent generators


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines