Rosetta 3.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
protocols::pack_daemon::EntityFunc Class Reference

#include <DynamicAggregateFunction.hh>

Inheritance diagram for protocols::pack_daemon::EntityFunc:
Inheritance graph
[legend]
Collaboration diagram for protocols::pack_daemon::EntityFunc:
Collaboration graph
[legend]

Public Types

typedef
utility::pointer::ReferenceCount 
parent
 
typedef
protocols::genetic_algorithm::Entity 
Entity
 
typedef
numeric::expression_parser::Expression 
Expression
 
typedef
numeric::expression_parser::ExpressionOP 
ExpressionOP
 
typedef
numeric::expression_parser::ExpressionCOP 
ExpressionCOP
 
typedef
numeric::expression_parser::VariableExpression 
VariableExpression
 
typedef
numeric::expression_parser::VariableExpressionOP 
VariableExpressionOP
 
typedef
numeric::expression_parser::VariableExpressionCOP 
VariableExpressionCOP
 
typedef
numeric::expression_parser::ArithmeticASTExpressionOP 
ArithmeticASTExpressionOP
 
typedef core::Size Size
 

Public Member Functions

 EntityFunc ()
 
virtual ~EntityFunc ()
 
void set_num_entity_elements (Size num_ee)
 
void initialize_from_input_file (std::istream &input)
 
core::Real evaluate (Entity const &entity, bool verbose=false)
 
ExpressionCOP variable_expression (numeric::expression_parser::ArithmeticASTValue const &) const
 
ExpressionCOP function_expression (numeric::expression_parser::FunctionTokenCOP function, utility::vector1< ExpressionCOP > const &args) const
 

Private Member Functions

void initialize_scanner_and_function_names ()
 
void process_AA_SET_line (std::string const &line, Size line_number, std::istream &input_line)
 
void process_SET_CONDITION_line (std::string const &line, Size line_number, std::istream &input_line)
 
void process_SUB_EXPRESSION_line (std::string const &line, Size line_number, std::istream &input_line, std::map< std::string, ArithmeticASTExpressionOP > &expression_asts)
 
void process_SCORE_line (std::string const &line, Size line_number, std::istream &input_line, ArithmeticASTExpressionOP &score_expression_ast)
 
void turn_expression_ASTs_into_expressions (std::map< std::string, ArithmeticASTExpressionOP > const &expression_asts, ArithmeticASTExpressionOP score_expression_ast)
 
void assign_entity_sequence_to_variables (Entity const &entity)
 

Private Attributes

Size num_entity_elements_
 
utility::vector1
< VariableExpressionOP
entity_aas_
 
std::map< std::string,
utility::vector1< core::Real > > 
aa_sets_name_map_
 
std::map< std::string, Sizeaa_sets_dec_line_
 
std::map< std::string,
ExpressionCOP
subexpression_name_map_
 
std::map< std::string, Sizesubexpression_name_dec_line_
 
std::map< std::string,
VariableExpressionOP
variable_expression_map_
 
utility::vector1< std::pair
< ExpressionCOP,
SurrogateVariableExpressionOP > > 
expression_evaluation_order_
 
ExpressionCOP score_expression_
 
numeric::expression_parser::ArithmeticScannerOP scanner_
 
std::set< std::string > function_names_
 Function names may not be used as variable names. More...
 
std::set< std::string > illegal_variable_names_
 

Detailed Description

Definition at line 819 of file DynamicAggregateFunction.hh.

Member Typedef Documentation

typedef numeric::expression_parser::ArithmeticASTExpressionOP protocols::pack_daemon::EntityFunc::ArithmeticASTExpressionOP

Definition at line 834 of file DynamicAggregateFunction.hh.

Definition at line 824 of file DynamicAggregateFunction.hh.

Definition at line 826 of file DynamicAggregateFunction.hh.

typedef numeric::expression_parser::ExpressionCOP protocols::pack_daemon::EntityFunc::ExpressionCOP

Definition at line 828 of file DynamicAggregateFunction.hh.

typedef numeric::expression_parser::ExpressionOP protocols::pack_daemon::EntityFunc::ExpressionOP

Definition at line 827 of file DynamicAggregateFunction.hh.

Definition at line 822 of file DynamicAggregateFunction.hh.

Definition at line 836 of file DynamicAggregateFunction.hh.

Definition at line 830 of file DynamicAggregateFunction.hh.

typedef numeric::expression_parser::VariableExpressionCOP protocols::pack_daemon::EntityFunc::VariableExpressionCOP

Definition at line 832 of file DynamicAggregateFunction.hh.

typedef numeric::expression_parser::VariableExpressionOP protocols::pack_daemon::EntityFunc::VariableExpressionOP

Definition at line 831 of file DynamicAggregateFunction.hh.

Constructor & Destructor Documentation

protocols::pack_daemon::EntityFunc::EntityFunc ( )

Definition at line 2515 of file DynamicAggregateFunction.cc.

protocols::pack_daemon::EntityFunc::~EntityFunc ( )
virtual

Definition at line 2519 of file DynamicAggregateFunction.cc.

Member Function Documentation

void protocols::pack_daemon::EntityFunc::assign_entity_sequence_to_variables ( Entity const &  entity)
private
core::Real protocols::pack_daemon::EntityFunc::evaluate ( Entity const &  entity,
bool  verbose = false 
)
ExpressionCOP protocols::pack_daemon::EntityFunc::function_expression ( numeric::expression_parser::FunctionTokenCOP  function,
utility::vector1< ExpressionCOP > const &  args 
) const
void protocols::pack_daemon::EntityFunc::initialize_from_input_file ( std::istream &  input)
void protocols::pack_daemon::EntityFunc::initialize_scanner_and_function_names ( )
private
void protocols::pack_daemon::EntityFunc::process_AA_SET_line ( std::string const &  line,
Size  line_number,
std::istream &  input_line 
)
private
void protocols::pack_daemon::EntityFunc::process_SCORE_line ( std::string const &  line,
Size  line_number,
std::istream &  input_line,
ArithmeticASTExpressionOP score_expression_ast 
)
private

Definition at line 3155 of file DynamicAggregateFunction.cc.

References scanner_.

Referenced by initialize_from_input_file().

void protocols::pack_daemon::EntityFunc::process_SET_CONDITION_line ( std::string const &  line,
Size  line_number,
std::istream &  input_line 
)
private
void protocols::pack_daemon::EntityFunc::process_SUB_EXPRESSION_line ( std::string const &  line,
Size  line_number,
std::istream &  input_line,
std::map< std::string, ArithmeticASTExpressionOP > &  expression_asts 
)
private
void protocols::pack_daemon::EntityFunc::set_num_entity_elements ( Size  num_ee)

Definition at line 2523 of file DynamicAggregateFunction.cc.

References num_entity_elements_.

void protocols::pack_daemon::EntityFunc::turn_expression_ASTs_into_expressions ( std::map< std::string, ArithmeticASTExpressionOP > const &  expression_asts,
ArithmeticASTExpressionOP  score_expression_ast 
)
private
ExpressionCOP protocols::pack_daemon::EntityFunc::variable_expression ( numeric::expression_parser::ArithmeticASTValue const &  ) const

Member Data Documentation

std::map< std::string, Size > protocols::pack_daemon::EntityFunc::aa_sets_dec_line_
private
std::map< std::string, utility::vector1< core::Real > > protocols::pack_daemon::EntityFunc::aa_sets_name_map_
private
utility::vector1< VariableExpressionOP > protocols::pack_daemon::EntityFunc::entity_aas_
private
utility::vector1< std::pair< ExpressionCOP, SurrogateVariableExpressionOP > > protocols::pack_daemon::EntityFunc::expression_evaluation_order_
private

Evaluate the subexpressions and then store them in the surrogate variable expressions in order.

Definition at line 915 of file DynamicAggregateFunction.hh.

Referenced by evaluate(), process_SET_CONDITION_line(), process_SUB_EXPRESSION_line(), and turn_expression_ASTs_into_expressions().

std::set< std::string > protocols::pack_daemon::EntityFunc::function_names_
private

Function names may not be used as variable names.

Definition at line 921 of file DynamicAggregateFunction.hh.

Referenced by initialize_scanner_and_function_names(), process_AA_SET_line(), process_SET_CONDITION_line(), and process_SUB_EXPRESSION_line().

std::set< std::string > protocols::pack_daemon::EntityFunc::illegal_variable_names_
private

This set represents strings that may not be used as variable names but which are not funciton names

Definition at line 924 of file DynamicAggregateFunction.hh.

Referenced by initialize_scanner_and_function_names(), process_AA_SET_line(), process_SET_CONDITION_line(), and process_SUB_EXPRESSION_line().

Size protocols::pack_daemon::EntityFunc::num_entity_elements_
private
numeric::expression_parser::ArithmeticScannerOP protocols::pack_daemon::EntityFunc::scanner_
private
ExpressionCOP protocols::pack_daemon::EntityFunc::score_expression_
private

Definition at line 917 of file DynamicAggregateFunction.hh.

Referenced by evaluate(), and turn_expression_ASTs_into_expressions().

std::map< std::string, Size > protocols::pack_daemon::EntityFunc::subexpression_name_dec_line_
private
std::map< std::string, ExpressionCOP > protocols::pack_daemon::EntityFunc::subexpression_name_map_
private
std::map< std::string, VariableExpressionOP > protocols::pack_daemon::EntityFunc::variable_expression_map_
private

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