diff --git a/Code/Wrappers/SWIG/itkBase.i b/Code/Wrappers/SWIG/itkBase.i
index 7e40407b8040da55f2683f5c4931862b50f97d09..a56792c52f53676ba75477c05f85f0561d260270 100644
--- a/Code/Wrappers/SWIG/itkBase.i
+++ b/Code/Wrappers/SWIG/itkBase.i
@@ -162,6 +162,16 @@ class itkIndent {
  DECLARE_REF_COUNT_CLASS( itkObject )
 
  
+ class itkProcessObject : public itkObject {
+   public:
+     //static itkProcessObject_Pointer New();
+     virtual itkLightObject_Pointer CreateAnother() const;
+   private:
+     itkProcessObject(itkProcessObject const & arg0);
+     void operator=(itkProcessObject const & arg0);
+ };
+ DECLARE_REF_COUNT_CLASS( itkProcessObject )
+
 
  class itkObjectFactoryBase : public itkObject {
    public:
diff --git a/Code/Wrappers/SWIG/itkBase.includes b/Code/Wrappers/SWIG/itkBase.includes
index e6318b661eb7050423e46c6e7091679fe523e19b..10db084e6ec8f5aac84fdd89de6591ae4e5572eb 100644
--- a/Code/Wrappers/SWIG/itkBase.includes
+++ b/Code/Wrappers/SWIG/itkBase.includes
@@ -23,6 +23,7 @@
 
 #include "itkLightObject.h"
 #include "itkObject.h"
+#include "itkProcessObject.h"
 #include "itkObjectFactoryBase.h"
 
 #include "itkCommand.h"
@@ -32,6 +33,8 @@ typedef itk::LightObject                itkLightObject;
 typedef itk::LightObject::Pointer       itkLightObject_Pointer;
 typedef itk::Object                     itkObject;
 typedef itk::Object::Pointer            itkObject_Pointer;
+typedef itk::ProcessObject              itkProcessObject;
+typedef itk::ProcessObject::Pointer     itkProcessObject_Pointer;
 typedef itk::ObjectFactoryBase          itkObjectFactoryBase;
 typedef itk::ObjectFactoryBase::Pointer itkObjectFactoryBase_Pointer;
 typedef itk::MetaDataDictionary         itkMetaDataDictionary;
diff --git a/Code/Wrappers/SWIG/otbApplication.i b/Code/Wrappers/SWIG/otbApplication.i
index b1aa4175c96eae66984ebb4456223f8b520cec72..ce4ea5a77c99ead77ab09be32dad7b3ba36a6275 100644
--- a/Code/Wrappers/SWIG/otbApplication.i
+++ b/Code/Wrappers/SWIG/otbApplication.i
@@ -161,6 +161,26 @@ private:
   void operator=(const Self&);
 };
 
+
+class AddProcessToWatchEvent : public itkEventObject {
+   public:
+     AddProcessToWatchEvent();
+     ~AddProcessToWatchEvent();
+     virtual char const * GetEventName() const;
+     virtual bool CheckEvent(itkEventObject const * e) const;
+     virtual itkEventObject * MakeObject() const;
+     AddProcessToWatchEvent(AddProcessToWatchEvent const & s);
+
+     itkProcessObject * GetProcess() const;
+     void SetProcess(itkProcessObject * process);
+     void SetProcessDescription(const std::string desc);
+     std::string GetProcessDescription() const;
+
+   private:
+     void operator=(AddProcessToWatchEvent const & arg0);
+   protected:
+};
+
 %include "PyCommand.i"
 
 
diff --git a/Code/Wrappers/SWIG/otbWrapperSWIGIncludes.h b/Code/Wrappers/SWIG/otbWrapperSWIGIncludes.h
index 8270d7a819a89b5dce04f206acc630b520c63372..0b66fec7b1b635741bf1ff1e6379c2c0b6ebbf68 100644
--- a/Code/Wrappers/SWIG/otbWrapperSWIGIncludes.h
+++ b/Code/Wrappers/SWIG/otbWrapperSWIGIncludes.h
@@ -20,10 +20,11 @@
 
 #include "otbWrapperApplication.h"
 #include "otbWrapperApplicationRegistry.h"
+#include "otbWrapperAddProcessToWatchEvent.h"
 
 typedef otb::Wrapper::Application                        Application;
 typedef otb::Wrapper::Application::Pointer               Application_Pointer;
 typedef otb::Wrapper::ApplicationRegistry                Registry;
-
+typedef otb::Wrapper::AddProcessToWatchEvent             AddProcessToWatchEvent;
 
 #endif