Rosetta 3.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Protected Types | Protected Member Functions | Private Member Functions | Private Attributes | List of all members
core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library > Class Template Reference

forward declaration for core::fragment::picking_old::concepts::Librarian More...

#include <Librarian.fwd.hh>

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

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

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 More...
 
Bookmarks const & bookmarks () const
 get the current bookmark heap More...
 
Bookmarksbookmarks ()
 get the current bookmark heap More...
 
ExtentGenOPs const & extent_gen () const
 the list of extent generators More...
 
ExtentGenOPsextent_gen ()
 the list of extent generators More...
 
ExtentEvalOPs const & extent_eval () const
 the list of extent evaluators More...
 
ExtentEvalOPsextent_eval ()
 the list of extent evaluators More...
 

Private Member Functions

 Librarian (Librarian const &rval)
 disallow copy constructor More...
 
Librarianoperator= (Librarian const &rval)
 disallow copy assignment More...
 

Private Attributes

Bookmarks bookmarks_
 heap of bookmarks More...
 
ExtentGenOPs egen_
 generators for page extents More...
 
ExtentEvalOPs eeval_
 list of page extent evaluators More...
 

Detailed Description

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

forward declaration for core::fragment::picking_old::concepts::Librarian

Librarian template for sorting through and extracting desired fragments.

Definition at line 26 of file Librarian.fwd.hh.

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

Definition at line 57 of file Librarian.hh.

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

Definition at line 56 of file Librarian.hh.

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

Definition at line 55 of file Librarian.hh.

template<typename Bookmark, typename ExtentEvaluator, typename ExtentGenerator, typename Library>
typedef Bookmarks::const_iterator core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >::BookmarkConstIterator

Definition at line 71 of file Librarian.hh.

template<typename Bookmark, typename ExtentEvaluator, typename ExtentGenerator, typename Library>
typedef Bookmarks::iterator core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >::BookmarkIterator

Definition at line 72 of file Librarian.hh.

template<typename Bookmark, typename ExtentEvaluator, typename ExtentGenerator, typename Library>
typedef utility::vector1< Bookmark > core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >::Bookmarks

Definition at line 70 of file Librarian.hh.

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

Definition at line 63 of file Librarian.hh.

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

Definition at line 66 of file Librarian.hh.

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

Definition at line 65 of file Librarian.hh.

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

Definition at line 79 of file Librarian.hh.

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

Definition at line 68 of file Librarian.hh.

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

Definition at line 67 of file Librarian.hh.

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

Definition at line 78 of file Librarian.hh.

template<typename Bookmark, typename ExtentEvaluator, typename ExtentGenerator, typename Library>
typedef Book::Page core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >::Page

Definition at line 61 of file Librarian.hh.

template<typename Bookmark, typename ExtentEvaluator, typename ExtentGenerator, typename Library>
typedef Book::PageConstIterator core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >::PageConstIterator

Definition at line 59 of file Librarian.hh.

template<typename Bookmark, typename ExtentEvaluator, typename ExtentGenerator, typename Library>
typedef Book::PageIterator core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >::PageIterator

Definition at line 60 of file Librarian.hh.

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

Definition at line 53 of file Librarian.hh.

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

Definition at line 87 of file Librarian.hh.

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

default destructor

Definition at line 93 of file Librarian.hh.

template<typename Bookmark, typename ExtentEvaluator, typename ExtentGenerator, typename Library>
core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >::Librarian ( Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library > const &  rval)
private

disallow copy constructor

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

Definition at line 183 of file Librarian.hh.

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

Definition at line 166 of file Librarian.hh.

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

get the current bookmark heap

Definition at line 215 of file Librarian.hh.

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

get the current bookmark heap

Definition at line 222 of file Librarian.hh.

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)

Definition at line 116 of file Librarian.hh.

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>
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)

Definition at line 125 of file Librarian.hh.

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

Definition at line 190 of file Librarian.hh.

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

Definition at line 173 of file Librarian.hh.

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 
)
inlineprotected

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

Definition at line 202 of file Librarian.hh.

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
inlineprotected

the list of extent evaluators

Definition at line 243 of file Librarian.hh.

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

the list of extent evaluators

Definition at line 250 of file Librarian.hh.

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

the list of extent generators

Definition at line 229 of file Librarian.hh.

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

the list of extent generators

Definition at line 236 of file Librarian.hh.

template<typename Bookmark, typename ExtentEvaluator, typename ExtentGenerator, typename Library>
Librarian& core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >::operator= ( Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library > const &  rval)
private

disallow copy assignment

Member Data Documentation

template<typename Bookmark, typename ExtentEvaluator, typename ExtentGenerator, typename Library>
Bookmarks core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >::bookmarks_
private
template<typename Bookmark, typename ExtentEvaluator, typename ExtentGenerator, typename Library>
ExtentEvalOPs core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >::eeval_
private
template<typename Bookmark, typename ExtentEvaluator, typename ExtentGenerator, typename Library>
ExtentGenOPs core::fragment::picking_old::concepts::Librarian< Bookmark, ExtentEvaluator, ExtentGenerator, Library >::egen_
private

The documentation for this class was generated from the following files: