source: molecuilder/src/Actions/ManipulateAtomsProcess.hpp@ 32842d8

Last change on this file since 32842d8 was 521e29, checked in by Tillmann Crueger <crueger@…>, 16 years ago

Switched type of pointer used for ActionStates

  • Property mode set to 100644
File size: 888 bytes
RevLine 
[cbc27f]1/*
2 * ManipulateAtomsProcess.hpp
3 *
4 * Created on: Feb 18, 2010
5 * Author: crueger
6 */
7
8#ifndef MANIPULATEATOMSPROCESS_HPP_
9#define MANIPULATEATOMSPROCESS_HPP_
10
11#include "Actions/Process.hpp"
[5738177]12
13#include<boost/function.hpp>
14
[cbc27f]15#include "Descriptors/AtomDescriptor.hpp"
16
[5738177]17class World;
18
[cbc27f]19class ManipulateAtomsProcess : public Process
20{
21public:
22 ManipulateAtomsProcess(boost::function<void(atom*)> _operation, AtomDescriptor descr,std::string _name,bool _doRegister=true);
23 virtual ~ManipulateAtomsProcess();
24
25 virtual bool canUndo();
[0012e6]26 virtual bool shouldUndo();
[9ef76a]27
28 virtual void doManipulate(World *);
[cbc27f]29private:
[0012e6]30
[521e29]31 virtual Action::state_ptr performCall();
32 virtual Action::state_ptr performUndo(Action::state_ptr);
33 virtual Action::state_ptr performRedo(Action::state_ptr);
[0012e6]34
[cbc27f]35 AtomDescriptor descr;
36 boost::function<void(atom*)> operation;
37};
38
39#endif /* MANIPULATEATOMSPROCESS_HPP_ */
Note: See TracBrowser for help on using the repository browser.