Index: src/Actions/Makefile.am
===================================================================
--- src/Actions/Makefile.am	(revision f7c19ef45479bcaff60cc9fdb2998767b71aefb3)
+++ src/Actions/Makefile.am	(revision 81c980b965fafebb2dcfa97d9e7af728f828bf96)
@@ -230,13 +230,16 @@
   Actions/ParserAction/ParseTremoloPotentialsAction.cpp \
   Actions/ParserAction/SetMpqcParametersAction.cpp \
-  Actions/ParserAction/SetOutputFormatsAction.cpp
+  Actions/ParserAction/SetOutputFormatsAction.cpp \
+  Actions/ParserAction/SetTremoloAtomdataAction.cpp
 PARSERACTIONHEADER = \
   Actions/ParserAction/ParseTremoloPotentialsAction.hpp \
   Actions/ParserAction/SetMpqcParametersAction.hpp \
-  Actions/ParserAction/SetOutputFormatsAction.hpp               
+  Actions/ParserAction/SetOutputFormatsAction.hpp \
+  Actions/ParserAction/SetTremoloAtomdataAction.hpp
 PARSERACTIONDEFS = \
   Actions/ParserAction/ParseTremoloPotentialsAction.def \
   Actions/ParserAction/SetMpqcParametersAction.def \
-  Actions/ParserAction/SetOutputFormatsAction.def               
+  Actions/ParserAction/SetOutputFormatsAction.def \
+  Actions/ParserAction/SetTremoloAtomdataAction.def
 
 RANDONNUMBERSSOURCE =\
Index: src/Actions/ParserAction/SetTremoloAtomdataAction.cpp
===================================================================
--- src/Actions/ParserAction/SetTremoloAtomdataAction.cpp	(revision 81c980b965fafebb2dcfa97d9e7af728f828bf96)
+++ src/Actions/ParserAction/SetTremoloAtomdataAction.cpp	(revision 81c980b965fafebb2dcfa97d9e7af728f828bf96)
@@ -0,0 +1,74 @@
+/*
+ * Project: MoleCuilder
+ * Description: creates and alters molecular systems
+ * Copyright (C)  2010 University of Bonn. All rights reserved.
+ * Please see the LICENSE file or "Copyright notice" in builder.cpp for details.
+ */
+
+/*
+ * SetTremoloAtomdataAction.cpp
+ *
+ *  Created on: Aug 9, 2011
+ *      Author: heber
+ */
+
+// include config.h
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include "CodePatterns/MemDebug.hpp"
+
+#include "Parser/TremoloParser.hpp"
+#include "Parser/FormatParserStorage.hpp"
+#include "CodePatterns/Log.hpp"
+#include "CodePatterns/Verbose.hpp"
+
+#include <iostream>
+#include <string>
+
+#include <boost/filesystem/fstream.hpp>
+
+using namespace std;
+
+#include "SetTremoloAtomdataAction.hpp"
+
+// and construct the stuff
+#include "SetTremoloAtomdataAction.def"
+#include "Action_impl_pre.hpp"
+/** =========== define the function ====================== */
+Action::state_ptr ParserSetTremoloAtomdataAction::performCall() {
+  // obtain information
+  getParametersfromValueStorage();
+
+  TremoloParser &tremolo = FormatParserStorage::getInstance().getTremolo();
+
+  DoLog(1) && (Log() << Verbose(1) << "Setting Tremolo's ATOMDATA to: '" << params.atomdata_string << "'" << std::endl);
+
+  tremolo.setAtomData(params.atomdata_string);
+
+  return Action::success;
+}
+
+Action::state_ptr ParserSetTremoloAtomdataAction::performUndo(Action::state_ptr _state) {
+//  ParserLoadXyzState *state = assert_cast<ParserLoadXyzState*>(_state.get());
+
+  return Action::failure;
+//  string newName = state->mol->getName();
+//  state->mol->setName(state->lastName);
+//
+//  return Action::state_ptr(new ParserLoadXyzState(state->mol,newName));
+}
+
+Action::state_ptr ParserSetTremoloAtomdataAction::performRedo(Action::state_ptr _state){
+  return Action::failure;
+}
+
+bool ParserSetTremoloAtomdataAction::canUndo() {
+  return false;
+}
+
+bool ParserSetTremoloAtomdataAction::shouldUndo() {
+  return false;
+}
+/** =========== end of function ====================== */
Index: src/Actions/ParserAction/SetTremoloAtomdataAction.def
===================================================================
--- src/Actions/ParserAction/SetTremoloAtomdataAction.def	(revision 81c980b965fafebb2dcfa97d9e7af728f828bf96)
+++ src/Actions/ParserAction/SetTremoloAtomdataAction.def	(revision 81c980b965fafebb2dcfa97d9e7af728f828bf96)
@@ -0,0 +1,33 @@
+/*
+ * SetTremoloAtomdataAction.def
+ *
+ *  Created on: Feb 9, 2011
+ *      Author: heber
+ */
+
+// all includes and forward declarations necessary for non-integral types below
+#include <boost/filesystem.hpp>
+
+// i.e. there is an integer with variable name Z that can be found in
+// ValueStorage by the token "Z" -> first column: int, Z, "Z"
+// "undefine" if no parameters are required, use (NODEFAULT) for each (undefined) default value
+#define paramtypes (std::string)
+#define paramtokens ("set-tremolo-atomdata")
+#define paramdescriptions ("properties to set, space-separated")
+#undef paramdefaults
+#define paramreferences (atomdata_string)
+
+#undef statetypes
+#undef statereferences
+
+// some defines for all the names, you may use ACTION, STATE and PARAMS
+#define CATEGORY Parser
+#define MENUNAME "parser"
+#define MENUPOSITION 12
+#define ACTIONNAME SetTremoloAtomdata
+#define TOKEN "set-tremolo-atomdata"
+
+
+// finally the information stored in the ActionTrait specialization
+#define DESCRIPTION "sets the properties per atom line to write to tremolo data file"
+#undef SHORTFORM
Index: src/Actions/ParserAction/SetTremoloAtomdataAction.hpp
===================================================================
--- src/Actions/ParserAction/SetTremoloAtomdataAction.hpp	(revision 81c980b965fafebb2dcfa97d9e7af728f828bf96)
+++ src/Actions/ParserAction/SetTremoloAtomdataAction.hpp	(revision 81c980b965fafebb2dcfa97d9e7af728f828bf96)
@@ -0,0 +1,22 @@
+/*
+ * SetTremoloAtomdataAction.hpp
+ *
+ *  Created on: Aug 9, 2011
+ *      Author: heber
+ */
+
+#ifndef SETTREMOLOATOMDATAACTION_HPP_
+#define SETTREMOLOATOMDATAACTION_HPP_
+
+// include config.h
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+
+#include "Actions/Action.hpp"
+
+#include "SetTremoloAtomdataAction.def"
+#include "Action_impl_header.hpp"
+
+#endif /* SETTREMOLOATOMDATAACTION_HPP_ */
Index: src/Parser/TremoloParser.cpp
===================================================================
--- src/Parser/TremoloParser.cpp	(revision f7c19ef45479bcaff60cc9fdb2998767b71aefb3)
+++ src/Parser/TremoloParser.cpp	(revision 81c980b965fafebb2dcfa97d9e7af728f828bf96)
@@ -320,4 +320,18 @@
   //DoLog(1) && (Log() << Verbose(1) << "INFO: " << usedFields << std::endl);
 }
+
+/** Sets the properties per atom to print to .data file by parsing line from
+ *  \a atomdata_string.
+ *
+ *  We just call \sa TremoloParser::parseAtomDataKeysLine() which is left
+ *  private.,
+ *
+ * @param atomdata_string line to parse with space-separated values
+ */
+void TremoloParser::setAtomData(const std::string &atomdata_string)
+{
+  parseAtomDataKeysLine(atomdata_string, 0);
+}
+
 
 /**
Index: src/Parser/TremoloParser.hpp
===================================================================
--- src/Parser/TremoloParser.hpp	(revision f7c19ef45479bcaff60cc9fdb2998767b71aefb3)
+++ src/Parser/TremoloParser.hpp	(revision 81c980b965fafebb2dcfa97d9e7af728f828bf96)
@@ -37,5 +37,5 @@
   void parseKnownTypes(std::istream &file);
   void createKnownTypesByIdentity();
-
+  void setAtomData(const std::string &atomdata_string);
 
 private:
Index: tests/regression/Makefile.am
===================================================================
--- tests/regression/Makefile.am	(revision f7c19ef45479bcaff60cc9fdb2998767b71aefb3)
+++ tests/regression/Makefile.am	(revision 81c980b965fafebb2dcfa97d9e7af728f828bf96)
@@ -110,4 +110,5 @@
 	$(srcdir)/Parser/Tremolo-Potentials/testsuite-parser-tremolo-potentials-load.at \
 	$(srcdir)/Parser/Tremolo-Potentials/testsuite-parser-tremolo-potentials-save.at \
+	$(srcdir)/Parser/Tremolo-SetAtomdata/testsuite-parser-tremolo-setatomdata.at \
 	$(srcdir)/Parser/Xyz/testsuite-parser-xyz-empty.at \
 	$(srcdir)/Parser/Xyz/testsuite-parser-xyz-load.at \
Index: tests/regression/Parser/Tremolo-SetAtomdata/post/argon.data
===================================================================
--- tests/regression/Parser/Tremolo-SetAtomdata/post/argon.data	(revision 81c980b965fafebb2dcfa97d9e7af728f828bf96)
+++ tests/regression/Parser/Tremolo-SetAtomdata/post/argon.data	(revision 81c980b965fafebb2dcfa97d9e7af728f828bf96)
@@ -0,0 +1,3 @@
+# ATOMDATA	type	x=3
+Ar	4.72977	8	8	
+Ar	7.3	8	8	
Index: tests/regression/Parser/Tremolo-SetAtomdata/pre/argon.data
===================================================================
--- tests/regression/Parser/Tremolo-SetAtomdata/pre/argon.data	(revision 81c980b965fafebb2dcfa97d9e7af728f828bf96)
+++ tests/regression/Parser/Tremolo-SetAtomdata/pre/argon.data	(revision 81c980b965fafebb2dcfa97d9e7af728f828bf96)
@@ -0,0 +1,3 @@
+# ATOMDATA Id name type x=3
+1	Ar1	Ar	4.72977074	8.	8.	
+2	Ar2	Ar	7.3		8.		8.		
Index: tests/regression/Parser/Tremolo-SetAtomdata/testsuite-parser-tremolo-setatomdata.at
===================================================================
--- tests/regression/Parser/Tremolo-SetAtomdata/testsuite-parser-tremolo-setatomdata.at	(revision 81c980b965fafebb2dcfa97d9e7af728f828bf96)
+++ tests/regression/Parser/Tremolo-SetAtomdata/testsuite-parser-tremolo-setatomdata.at	(revision 81c980b965fafebb2dcfa97d9e7af728f828bf96)
@@ -0,0 +1,11 @@
+### parsing tremolo
+
+AT_SETUP([Parser - set tremolo's atomdata])
+AT_KEYWORDS([parser,tremolo,set-tremolo-atomdata])
+
+file=argon.data
+AT_CHECK([/bin/cp ${abs_top_srcdir}/tests/regression/Parser/Tremolo-SetAtomdata/pre/argon.data $file], 0, [ignore], [ignore])
+AT_CHECK([../../molecuilder -i argon.data --set-tremolo-atomdata "type x=3"], 0, [stdout], [ignore])
+AT_CHECK([file=argon.data; diff -I '%.*' $file ${abs_top_srcdir}/tests/regression/Parser/Tremolo-SetAtomdata/post/argon.data], 0, [ignore], [ignore])
+
+AT_CLEANUP
Index: tests/regression/Parser/testsuite-parser.at
===================================================================
--- tests/regression/Parser/testsuite-parser.at	(revision f7c19ef45479bcaff60cc9fdb2998767b71aefb3)
+++ tests/regression/Parser/testsuite-parser.at	(revision 81c980b965fafebb2dcfa97d9e7af728f828bf96)
@@ -38,4 +38,7 @@
 m4_include([Parser/Tremolo-Potentials/testsuite-parser-tremolo-potentials-save.at])
 
+# setting tremolo's atomdata line
+m4_include([Parser/Tremolo-SetAtomdata/testsuite-parser-tremolo-setatomdata.at])
+
 # parsing xyz
 m4_include([Parser/Xyz/testsuite-parser-xyz-empty.at])
