Rosetta
Public Member Functions | Static Public Member Functions | Private Attributes | List of all members
protocols::moves::SwitchMover Class Reference

SwitchMover can hold multiple movers and execute only the requested one. More...

#include <MoverContainer.hh>

Inheritance diagram for protocols::moves::SwitchMover:
Inheritance graph
[legend]

Public Member Functions

 SwitchMover ()
 
 SwitchMover (SwitchMover const &)
 Copy constructor. Performs a deep copy of all contained movers. More...
 
MoverOP clone () const override
 Return a clone of the Mover object. More...
 
MoverOP fresh_instance () const override
 Generates a new Mover object freshly created with the default ctor. More...
 
void apply (core::pose::Pose &pose) override
 Main Method. More...
 
MoverOP get_selected_mover ()
 
std::string selected () const
 
void selected (std::string sele)
 
void parse_my_tag (utility::tag::TagCOP tag, basic::datacache::DataMap &) override
 Called by MoverFactory when constructing new Movers. Takes care of the specific mover's parsing. More...
 
std::string get_name () const override
 Each derived class must specify its name. The class name. More...
 
- Public Member Functions inherited from protocols::moves::MoverContainer
 MoverContainer ()
 
 MoverContainer (MoverContainer const &source)
 to be called by derived-class clone() methods; copy all data from the source MoverContainer More...
 
void add_mover (MoverOP mover_in, core::Real weight_in=1.0)
 Adds a mover to the end of this container. More...
 
std::string get_mover (core::Size index) const
 
void clear ()
 
void set_input_pose (PoseCOP pose) override
 Sets the input Pose for both the container and the contained movers, for rmsd. More...
 
void set_native_pose (PoseCOP pose) override
 setter for native poses contained for rms -— we should get rid of this method? it is widely used, but a bit unsafe More...
 
void set_current_tag (std::string const &new_tag) override
 
core::Size nr_moves ()
 
core::Size size () const
 
MoverOP front ()
 
utility::vector0< core::Real > const & weights () const
 
utility::vector0< MoverOP > const & movers () const
 
void provide_citation_info (basic::citation_manager::CitationCollectionList &) const override
 Provide the citation. More...
 
- Public Member Functions inherited from protocols::moves::Mover
 Mover ()
 
virtual MoverOP create ()
 
MoverCOP get_self_ptr () const
 
MoverOP get_self_ptr ()
 
MoverCAP get_self_weak_ptr () const
 
MoverAP get_self_weak_ptr ()
 
 Mover (std::string const &type_name)
 sets the type for a mover; name_ has been removed (2010/05/14) More...
 
virtual void test_move (Pose &pose)
 : Unit test support function. Apply one move to a given pose. Allows extra test specific functions to be called before applying More...
 
virtual bool reinitialize_for_each_job () const
 Inform the Job Distributor (August '08 vintage) whether this object needs to be freshly regenerated on each use. More...
 
virtual bool reinitialize_for_new_input () const
 Inform the Job Distributor (August '08 vintage) whether this object needs to be regenerated when the input pose is about to change, (for example, if the Mover has special code on the first apply() that is only valid for that one input pose). More...
 
MoverStatus get_last_move_status () const
 end parser interface, start Job Distributor interface///////////// More...
 
void reset_status ()
 resets status to SUCCESS, meant to be used before an apply(). The job distributor (august 08 vintage) uses this to ensure non-accumulation of status across apply()s. More...
 
virtual core::pose::PoseOP get_additional_output ()
 Mechanism by which a mover may return multiple output poses from a single input pose. More...
 
void set_type (std::string const &setting)
 Set the 'type' string. More...
 
std::string get_type () const
 
void type (const std::string &type_in)
 Set the 'type' string. More...
 
std::string const & type () const
 Get the set 'type' string. More...
 
PoseCOP get_input_pose () const
 
PoseCOP get_native_pose () const
 
void set_current_job (protocols::jobdist::BasicJobCOP job)
 
jobdist::BasicJobCOP get_current_job () const
 
std::string get_current_tag () const
 A tag is a unique identifier used to identify structures produced by this Mover. get_current_tag() returns the tag, and set_current_tag( std::string tag ) sets the tag. This functionality is not intended for use with the 2008 job distributor. More...
 
virtual void show (std::ostream &output=std::cout) const
 Outputs details about the Mover, including current settings. More...
 
virtual core::Real last_proposal_density_ratio ()
 
virtual void clear_info ()
 Strings container can be used to return miscellaneous info (as std::string) from a mover, such as notes about the results of apply(). The job distributor (Apr 09 vintage) will check this function to see if your protocol wants to add string info to the Job that ran this mover. One way this can be useful is that later, a JobOutputter may include/append this info to an output file. More...
 
virtual Stringsinfo ()
 non-const accessor More...
 
virtual Strings const & info () const
 const accessor More...
 

Static Public Member Functions

static std::string mover_name ()
 
static void provide_xml_schema (utility::tag::XMLSchemaDefinition &xsd)
 
- Static Public Member Functions inherited from protocols::moves::Mover
static std::string name ()
 
static void register_options ()
 Overload this static method if you access options within the mover. More...
 

Private Attributes

std::string user_name_
 
utility::vector0< std::string > mover_names_
 
std::string selected_
 
bool available_
 

Additional Inherited Members

- Public Types inherited from protocols::moves::Mover
typedef utility::tag::TagCOP TagCOP
 
typedef core::pose::Pose Pose
 
typedef core::pose::PoseCOP PoseCOP
 
typedef std::list< std::string > Strings
 
- Protected Member Functions inherited from protocols::moves::Mover
void set_last_move_status (MoverStatus status)
 nonvirtual setter for MoverStatus last_status_. Protected means that only the mover itself will be able to change its own status. The job distributor (august 08 vintage) is aware of status set with this function and will do what the MoverStatus says. More...
 
- Protected Attributes inherited from protocols::moves::MoverContainer
utility::vector0< core::Realweight_
 relative weight when part of MoverContainer. More...
 
utility::vector0< MoverOPmovers_
 

Detailed Description

SwitchMover can hold multiple movers and execute only the requested one.

In terms of RosettaScripts, it allows to have a single script with N- different behaviours that can be called through the parser:script_vars (for example). And it will log in the scores which mover was used.

Constructor & Destructor Documentation

◆ SwitchMover() [1/2]

protocols::moves::SwitchMover::SwitchMover ( )
inline

◆ SwitchMover() [2/2]

protocols::moves::SwitchMover::SwitchMover ( SwitchMover const &  )
default

Copy constructor. Performs a deep copy of all contained movers.

Member Function Documentation

◆ apply()

void protocols::moves::SwitchMover::apply ( core::pose::Pose )
overridevirtual

◆ clone()

MoverOP protocols::moves::SwitchMover::clone ( ) const
overridevirtual

Return a clone of the Mover object.

clone is meant to return an OP'ed deep copy of this object. This really should be a pure virtual in the base class, but adding pure virtuals to Mover would massively disrupt the code. This default implementation crashes at runtime instead of compiletime if you try to call it. If this code is causing you problems, your Mover needs to override this function.

Reimplemented from protocols::moves::Mover.

◆ fresh_instance()

MoverOP protocols::moves::SwitchMover::fresh_instance ( ) const
overridevirtual

Generates a new Mover object freshly created with the default ctor.

fresh_instance is meant to return a new object of this class, created with the default constructor. This really should be a pure virtual in the base class, but adding pure virtuals to Mover would massively disrupt the code. This default implementation crashes at runtime instead of compiletime if you try to call it. If this code is causing you problems, your Mover needs to override this function. This is used by the August 08 job distributor.

Reimplemented from protocols::moves::Mover.

◆ get_name()

std::string protocols::moves::SwitchMover::get_name ( ) const
overridevirtual

Each derived class must specify its name. The class name.

Implements protocols::moves::Mover.

References protocols::moves::SequenceMover::mover_name().

◆ get_selected_mover()

MoverOP protocols::moves::SwitchMover::get_selected_mover ( )

◆ mover_name()

std::string protocols::moves::SwitchMover::mover_name ( )
static

◆ parse_my_tag()

void protocols::moves::SwitchMover::parse_my_tag ( utility::tag::TagCOP  tag,
basic::datacache::DataMap data 
)
overridevirtual

Called by MoverFactory when constructing new Movers. Takes care of the specific mover's parsing.

Some movers need not be parsed, so we shouldn't force people to reimplement this method. However, we should be chatty about the fact that someone is using a RosettaScripts interface to a mover which didn't define parse_my_tag()

Reimplemented from protocols::moves::Mover.

References protocols::moves::MoverContainer::add_mover(), and protocols::moves::find_mover_or_die().

◆ provide_xml_schema()

void protocols::moves::SwitchMover::provide_xml_schema ( utility::tag::XMLSchemaDefinition &  xsd)
static

◆ selected() [1/2]

std::string protocols::moves::SwitchMover::selected ( ) const
inline

References selected_.

◆ selected() [2/2]

void protocols::moves::SwitchMover::selected ( std::string  sele)
inline

References selected_.

Member Data Documentation

◆ available_

bool protocols::moves::SwitchMover::available_
private

◆ mover_names_

utility::vector0<std::string> protocols::moves::SwitchMover::mover_names_
private

◆ selected_

std::string protocols::moves::SwitchMover::selected_
private

Referenced by selected().

◆ user_name_

std::string protocols::moves::SwitchMover::user_name_
private

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