Index: /trunk/FACT++/src/Event.h
===================================================================
--- /trunk/FACT++/src/Event.h	(revision 14001)
+++ /trunk/FACT++/src/Event.h	(revision 14002)
@@ -18,8 +18,8 @@
 public:
     /// Constructs an event as a combination of an EventImp and a DimCommand
-    Event(const std::string &name, const char *fmt="");
+    Event(const std::string &name, const std::string &fmt="");
     /// Copy constructor
     Event(const EventImp &imp);
-    Event(const EventImp &imp, const char *name, size_t siz);
+    Event(const EventImp &imp, const char *ptr, size_t siz);
 
     void SetDescription(const std::string &str) { fDescription=str; }
@@ -53,5 +53,4 @@
     void SetText(const char *txt) { SetData(txt, strlen(txt)+1); }
     void SetString(const std::string &str) { SetData(str.c_str(), str.length()+1); }
-
 };
 
Index: /trunk/FACT++/src/StateMachine.cc
===================================================================
--- /trunk/FACT++/src/StateMachine.cc	(revision 14001)
+++ /trunk/FACT++/src/StateMachine.cc	(revision 14002)
@@ -37,7 +37,7 @@
 //! For parameter description see StateMachineImp.
 //!
-EventImp *StateMachine::CreateEvent(const char *name, const char *fmt)
+EventImp *StateMachine::CreateEvent(const string &name, const string &fmt)
 {
-    return new Event((GetName()+'/'+name).c_str(), fmt);
+    return new Event(GetName()+'/'+name, fmt);
 }
 
Index: /trunk/FACT++/src/StateMachine.h
===================================================================
--- /trunk/FACT++/src/StateMachine.h	(revision 14001)
+++ /trunk/FACT++/src/StateMachine.h	(revision 14002)
@@ -7,5 +7,5 @@
 {
 protected:
-    EventImp *CreateEvent(const char *name, const char *fmt);
+    EventImp *CreateEvent(const std::string &name, const std::string &fmt);
 
 public:
Index: /trunk/FACT++/src/StateMachineDim.cc
===================================================================
--- /trunk/FACT++/src/StateMachineDim.cc	(revision 14001)
+++ /trunk/FACT++/src/StateMachineDim.cc	(revision 14002)
@@ -82,10 +82,10 @@
 //! For parameter description see StateMachineImp.
 //!
-EventImp *StateMachineDim::CreateEvent(const char *name, const char *fmt)
+EventImp *StateMachineDim::CreateEvent(const string &name, const string &fmt)
 {
     return new EventDim(GetName()+"/"+name, fmt, this);
 }
 
-EventImp *StateMachineDim::CreateService(const char *name)
+EventImp *StateMachineDim::CreateService(const string &name)
 {
     return new ServiceDim(name, this);
Index: /trunk/FACT++/src/StateMachineDim.h
===================================================================
--- /trunk/FACT++/src/StateMachineDim.h	(revision 14001)
+++ /trunk/FACT++/src/StateMachineDim.h	(revision 14002)
@@ -68,6 +68,6 @@
     void infoHandler();          /// Overwritten DimInfo::infoHandler
 
-    EventImp *CreateEvent(const char *name, const char *fmt);
-    EventImp *CreateService(const char *name);
+    EventImp *CreateEvent(const std::string &name, const std::string &fmt);
+    EventImp *CreateService(const std::string &name);
 
 protected:
Index: /trunk/FACT++/src/StateMachineImp.cc
===================================================================
--- /trunk/FACT++/src/StateMachineImp.cc	(revision 14001)
+++ /trunk/FACT++/src/StateMachineImp.cc	(revision 14002)
@@ -604,5 +604,5 @@
 }
 
-EventImp *StateMachineImp::CreateService(const char *)
+EventImp *StateMachineImp::CreateService(const string &)
 {
     return new EventImp();
@@ -611,5 +611,5 @@
 // --------------------------------------------------------------------------
 //
-EventImp &StateMachineImp::Subscribe(const char *name)
+EventImp &StateMachineImp::Subscribe(const string &name)
 {
     EventImp *evt = CreateService(name);
Index: /trunk/FACT++/src/StateMachineImp.h
===================================================================
--- /trunk/FACT++/src/StateMachineImp.h	(revision 14001)
+++ /trunk/FACT++/src/StateMachineImp.h	(revision 14002)
@@ -54,6 +54,6 @@
     bool HandleNewState(int newstate, const EventImp *evt, const char *txt);
 
-    virtual EventImp *CreateEvent(const char *name, const char *fmt) = 0;
-    virtual EventImp *CreateService(const char *);
+    virtual EventImp *CreateEvent(const std::string &name, const std::string &fmt) = 0;
+    virtual EventImp *CreateService(const std::string &);
 
     /// Is called continously to execute actions in the current state
@@ -100,5 +100,5 @@
     const std::string &GetName() const { return fName; }
 
-    EventImp &Subscribe(const char *name);
+    EventImp &Subscribe(const std::string &name);
 
     /// return the current state of the machine
