2004-07-05  Olivier Chapuis  <olivier.chapuis@free.fr>

	* build-utils/Makefile.am:
	* build-utils/rpm/Makefile.am:
	* build-utils/rpm/nucleo.spec.in:
	* configure.ac:
	Moved rpm/ to build-utils/rpm/
	
2004-07-01  Olivier Chapuis  <olivier.chapuis@free.fr>

	* configure.ac:
	If GL/gl.h is found, but if either libGL, LibGLU or GL/glx.h is not
	found generate an error

	* nucleo/core/carbon/Makefile.am:
	Fixed build of the make dist tarball

	* rpm/Makefile.am:
	* rpm/nucleo.spec.in:
	Fixed dependencies

	* nucleo/network/udp/UdpPlusSender.cxx:
	* nucleo/network/udp/UdpPlusReceiver.cxx:
	* nucleo/image/source/nudppImageSource.cxx:
	* nucleo/image/sink/nudppImageSink.cxx:
	* nucleo/gl/text/glFont.cxx:
	* apps/videoServer/vsSubProcess.cxx:
	* nucleo/core/select/sReactiveEngine.cxx:
	* nucleo/core/FileKeeper.cxx:
	* nucleo/utils/FileUtils.cxx:
	Included either stdio.h, math.h, sys/select.h, sys/socket.h or
	sys/errno.h for fixing build on certain system. Reported by
	Jason Bechervaise and Keith Rothman.
	
2004-06-29  Olivier Chapuis  <olivier.chapuis@free.fr>

	* nucleo/image/sink/Makefile.am:
	* nucleo/image/source/Makefile.am:
	* nucleo/data/vera/Makefile.am:
	* nucleo/configure.ac:
	Fixed build of the make dist tarball

	* nucleo/rpm/Makefile.am:
	* nucleo/rpm/nucleo.spec.in:
	* nucleo/configure.ac:
	* nucleo/Makefile.am:
	Added some stuff to automagically build rpm package (not tested yet)

	* nucleo/gl/window/glWindow.cxx:
	* nucleo/gl/window/glWindow_GLX.cxx:
	* nucleo/gl/window/glWindow.H:
	Added the server time to the event

2004-03-30  Olivier Chapuis  <olivier.chapuis@free.fr>

	* nucleo/plugins/Makefile.am:
	Fixed the plugin-list build

	* nucleo/image/source/v4lImageSource.cxx: 
	Fixed the includes

	* tests/test-udpplus.cxx: 
	* nucleo/image/sink/imagefileImageSink.H:
	* nucleo/image/source/nudppImageSource.cxx:
	* nucleo/network/udp/UdpPlusSender.cxx:
	* nucleo/network/udp/UdpPlusReceiver.cxx:
	Fixed compilation: included unistd.h

2004-03-29  Nicolas Roussel  <roussel@lri.fr>

	* nucleo/gl/text/glString.*: 
	* nucleo/gl/text/glFont.*: 	
	* nucleo/gl/text/glFontManager.*:
	* tests/test-glString.cxx:	
	Bug fix (font cache): font size is now a query string argument
	Added a getFont method to glString and getLineHeight to glFont

	* nucleo/gl/texture/glTexture.*: 
	Added getWidth and getHeight methods

----------------------------------------------------------------------------
Nicolas made a lot of changes...
The tag "paques" was added before committing these changes
----------------------------------------------------------------------------	
	

2004-03-03  Olivier Chapuis  <olivier.chapuis@free.fr>

	* nucleo/gl/window/glWindow_GLX.cxx (setup):
	Tried a DEPTH of 1 if 24 fail (needed if I run my server at depth 16)

	* tests/test-ffmpeg-sink.cxx:
	* nucleo/plugins/ffmpeg/ffmpegImageSource.H:
	Fixed compilation if HAVE_FFMPEG

2004-02-15  Olivier Chapuis  <olivier.chapuis@free.fr>

	* nucleo/gl/texture/glTiledTexturedImage.cxx (*):
	* nucleo/gl/texture/glTiledTexturedImage.H:
	Some cleaups and fixes. Added a way to store and reuse the
	tessellation

2004-02-14  Olivier Chapuis  <olivier.chapuis@free.fr>

	* nucleo/gl/texture/glTiledTexturedImage.cxx (*):
	* nucleo/gl/texture/glTiledTexturedImage.H (class glTiledTexturedImage):
	Moved point and uTex under the glTiledTexturedImage class

2004-02-12  Olivier Chapuis  <olivier.chapuis@free.fr>

	* nucleo/gl/texture/Makefile.am:
	* nucleo/gl/texture/glTiledTexturedImage.cxx (new file):
	* nucleo/gl/texture/glTiledTexturedImage.H (new file):
	Implemented tiled texture image

	* nucleo/gl/glUtils.cxx (glSetupTextureImage):
	Allows to pass a size different than the image size, useful with
	GL_UNPACK_ROW_LENGTH, _GL_UNPACK_SKIP_PIXELS GL_UNPACK_SKIP_ROWS.

	* nucleo/gl/glUtils.H:
	* nucleo/gl/glUtils.cxx (glSetupDummyTextureImage):
	New interface function for setting up a texture with a NULL image
	but a size

	* nucleo/gl/glUtils.H:
	* nucleo/gl/glUtils.cxx (glCheckError):
	A function for printing errors

	* tests/test-FileKeeper.cxx:
	* tests/test-SocketKeeper.cxx: 
	include <unistd.h> for read and write

	* configure.ac:
	Fixed X detection

2004-02-11 13:12  roussel

	* configure.ac:
	* nucleo-config.in:
	Simplified configure.ac a little

2004-02-11 13:11  roussel

	* build-utils/bootstrap
	Remove autom4*cache before bootstrapping

2004-02-11 13:09  roussel

	* nucleo/image/processing/difference/SceneChangeDetector.H:
	* nucleo/image/processing/difference/SceneChangeDetector.cxx:
	* nucleo/image/source/noiseImageSource.H:
	* nucleo/image/source/noiseImageSource.cxx:
	* nucleo/image/source/serverpushImageSource.H:
	* nucleo/image/source/serverpushImageSource.cxx:
	* nucleo/image/source/vsmpImageSource.H:
	* nucleo/image/source/vsmpImageSource.cxx:
	* nucleo/image/source/vssImageSource.H:
	* nucleo/image/source/vssImageSource.cxx:
	* nucleo/image/source/vstpImageSource.H:
	* nucleo/image/source/vstpImageSource.cxx:
	* demos/video/mini-videoProbe.cxx:
	* demos/vnc/vnc-relay.cxx:
	Use the new ReactiveEngine implementation

2004-02-11 13:09  roussel

	* nucleo/image/source/ImageSource.H:
	* nucleo/image/source/ImageSource.cxx:
	Image sources are now created with ImageSource::create

2004-02-11 13:09  roussel

	* nucleo/image/sink/ImageSink.H:
	* nucleo/image/sink/glwindowImageSink.cxx:
	Image sinks are now created with ImageSink::create

2004-02-11 13:07  roussel

	* nucleo/image/encoding/Conversion.cxx:
	* nucleo/image/encoding/JPEG_Conversion.cxx:
	Removed an ugly hack related to ancient libjeg versions

2004-02-11 13:06  roussel

	* nucleo/network/http/HttpMessage.cxx:
	* nucleo/network/http/ServerPush.H:
	* nucleo/network/tcp/TcpConnection.cxx:
	* nucleo/network/tcp/TcpServer.H:
	* nucleo/network/tcp/TcpServer.cxx:
	Use the new ReactiveEngine implementation

2004-02-11 13:05  roussel

	* nucleo/network/rdv/ServiceAnnouncer.H:
	* nucleo/network/rdv/ServiceFinder.H:
	ServiceFinder is now a ReactiveObject (so it can notify clients)

2004-02-11 13:04  roussel

	* nucleo/plugins/ffmpeg/ffmpegImageSource.H:
	* nucleo/plugins/ffmpeg/ffmpegImageSource.cxx:
	* nucleo/plugins/quicktime/movImageSource.H:
	* nucleo/plugins/quicktime/movImageSource.cxx:
	* nucleo/plugins/quicktime/sgImageSource.H:
	* nucleo/plugins/quicktime/sgImageSource.cxx:
	* nucleo/plugins/v4l/v4lImageSource.H:
	* nucleo/plugins/v4l/v4lImageSource.cxx:
	* nucleo/plugins/vnc/vncImageSource.cxx:
	Plugins now use the new ReactiveEngine implementation

2004-02-11 13:00  roussel

	* nucleo/gl/glUtils.H:
	* nucleo/gl/glUtils.cxx:
	glSetupTextureImage has new arguments to specify a subregion A new
	internal function (n2gl) allows to map a nucleo image encoding to
	OpenGL parameters

2004-02-11 12:58  roussel

	* nucleo/gl/window/glWindow.H:
	* nucleo/gl/window/glWindow.cxx:
	* nucleo/gl/window/glWindow_AGL.H:
	* nucleo/gl/window/glWindow_AGL.cxx:
	* nucleo/gl/window/glWindow_GLX.H:
	* nucleo/gl/window/glWindow_GLX.cxx:
	Added a new warpCursor method to glWindow.
	glWindows now use the new ReactiveEngine implementation.

2004-02-11 12:55  roussel

	* nucleo/gl/scenegraph/sgNode.H
	* nucleo/gl/scenegraph/sgViewpoint.H:
	* nucleo/gl/texture/glTexturedImage.H:
	* nucleo/gl/texture/glTexturedImage.cxx:
	Check for __APPLE__ instead of OS_IS_MACOSX

2004-02-11 12:53  roussel

	* nucleo/core/FileKeeper.H:
	* nucleo/core/FileKeeper.cxx:
	* nucleo/core/Makefile.am:
	* nucleo/core/ReactiveEngine.H:
	* nucleo/core/ReactiveEngine.cxx:
	* nucleo/core/ReactiveObject.H:
	* nucleo/core/TimeKeeper.H:
	* nucleo/core/TimeKeeper.cxx:
	* nucleo/core/carbon/Makefile.am:
	* nucleo/core/carbon/cFileKeeper.H:
	* nucleo/core/carbon/cFileKeeper.cxx:
	* nucleo/core/carbon/cReactiveEngine.H:
	* nucleo/core/carbon/cReactiveEngine.cxx:
	* nucleo/core/carbon/cTimeKeeper.H:
	* nucleo/core/carbon/cTimeKeeper.cxx:
	* nucleo/core/select/Makefile.am:
	* nucleo/core/select/sFileKeeper.H:
	* nucleo/core/select/sFileKeeper.cxx:
	* nucleo/core/select/sReactiveEngine.H:
	* nucleo/core/select/sReactiveEngine.cxx:
	* nucleo/core/select/sTimeKeeper.H:
	* nucleo/core/select/sTimeKeeper.cxx:
	New ReactiveEngine implementation

2004-02-11 12:52  roussel

	* nucleo/core/PluginManager.H:
	* nucleo/core/PluginManager.cxx:
	PluginManager fix: plugins are now loaded only once (so that
	static variables are not duplicated)

2004-02-11 12:36  roussel

	* apps/videoClient.cxx:
	* apps/videoServer/videoServer.cxx:
	* apps/videoServer/vsPostNotifier.cxx:
	* apps/videoServer/vsPreNotifier.cxx:
	* apps/videoServer/vsService.cxx:
	Use the new ReactiveEngine implementation and remove references to
	strstream

2004-02-11 12:34  roussel

	* nucleo/utils/AppUtils.cxx:
	* nucleo/utils/Makefile.am:
	* nucleo/utils/TimeUtils.H:
	* nucleo/utils/TimeUtils.cxx:
	Added TimeUtils files for the Chronometer implementation Check
	__APPLE__ instead of OS_IS_MACOSX in AppUtils.cxx
	
2004-02-11 12:30  roussel

	* docs/todo.html:
	* nucleo/plugins/howl/Makefile.am:
	* nucleo/plugins/howl/howlKeeper.H:
	* nucleo/plugins/howl/howlKeeper.cxx:
	* nucleo/plugins/howl/howlObject.H:
	* nucleo/plugins/howl/howlObject.cxx:
	* nucleo/plugins/howl/howlServiceAnnouncer.H:
	* nucleo/plugins/howl/howlServiceAnnouncer.cxx:
	* nucleo/plugins/howl/howlServiceFinder.H:
	* nucleo/plugins/howl/howlServiceFinder.cxx:
	Howl plugin revamped to use the new ReactiveEngine implementation

2004-02-11 12:27  roussel

	* tests/Makefile.am:
	* tests/test-FileKeeper.cxx:
	* tests/test-MemAlloc.cxx:
	* tests/test-SocketKeeper.cxx:
	* tests/test-TimeKeeper.cxx:
	* tests/test-glWindow.cxx:
	* tests/test-httpServer.cxx:
	* tests/test-plugins.cxx:
	* tests/test-rdv.cxx:
	* tests/test-reactiveEngine.cxx:
	Update existing test programs and add 3 new ones for the new
	ReactiveEngine implementation

2004-01-28 11:24  roussel

	* configure.ac:
	* nucleo-config.in:
	* demos/video/mini-videoProbe.cxx:
	* nucleo/image/sink/glwindowImageSink.cxx:
	* nucleo/image/sink/glxwindowImageSink.cxx:
	* nucleo/utils/SignalUtils.H:
	* nucleo/utils/SignalUtils.cxx:
	glft support is back (only used in glwindow image sinks)

2004-01-20  Olivier Chapuis  <olivier.chapuis@free.fr>

	* apps/videoServer/vsService.cxx:
	* nucleo/core/ReactiveEngine.cxx:
	* nucleo/image/source/ppmImageSource.H:
	* nucleo/network/tcp/TcpConnection.cxx:
	* nucleo/network/udp/UdpSender.cxx:
	Fixed compilation with gcc 2.95 by including errno.h, sys/time.h,
	and stdio.h.
	Note: gcc 2.95 has no sstream (it has strstream) but this should be
	fixed by the user (see http://gcc.gnu.org/fom_serv/cache/80.html).

2004-01-05  Nicolas Roussel  <roussel@lri.fr>

	* docs/*
	Documentation update. Still a lot of work to do...
	
	* apps/Makefile.am
	* apps/videoServer/Makefile.am
	* tests/Makefile.am
	Changed *LDADD into AM_LDFLAGS so that programs are not built
	using the installed version of the library but the one from the
	same build process

	* nucleo/network/rdv/*
	* apps/videoServer/videoServer.cxx
	Added two new network services based on RendezVous:
	ServiceAnnouncer and ServiceFinder. The real implementation of
	these services is provided by the howl plugin. VideoServer
	publishes two services (photo and video) using ServiceAnnouncer.

	* configure.ac
	* nucleo/plugins/v4l
	* nucleo/plugins/ffmpeg
	* nucleo/plugins/howl
	* nucleo/core/PluginManager*
	Fixed the v4l plug-in and started fixing ffmpeg plug-ins. Added a
	new howl-based plug-in (RendezVous implementation)

	* nucleo/image/source/ImageSource*
	* nucleo/image/sink/ImageSink*
	Replaced createImageSource by ImageSource::create and
	createImageSink by ImageSink::create

	* nucleo/core/Reactive*
	Added a isAlive method to Observable which is now used by
	ReactiveEngine to avoid segfault when trying to call the react
	method on a dead object.

2003-12-26  Olivier Chapuis  <olivier.chapuis@free.fr>

	* nucleo/gl/scenegraph/sgViewpoint.cxx (unproject):
	Fixed debug msg
	
	* nucleo/gl/scenegraph/sgViewpoint.cxx (project):
	* nucleo/gl/scenegraph/sgViewpoint.H:
	New method "project" which performs a gluProject as unproject performs
	a gluUnproject

2003-12-21  Olivier Chapuis  <olivier.chapuis@free.fr>

	* nucleo/gl/window/glWindow_GLX.cxx (getNextEvent): 
	Fixed un-initialized event on "true" return. Picked the first handled
	event.

	* nucleo/Makefile.am:
	Added "make ninstall" for just installing libNucleo (not the headers
	and the plugins) and "make pninstall" for just installing libNucleo
	and the plugins.

	* nucleo/gl/window/glWindow_GLX.cxx (setup):
	free the gl visual info

2003-12-19  Olivier Chapuis  <olivier.chapuis@free.fr>

	* nucleo/gl/scenegraph/sgNode.cxx (restoreSavedTransformations),
	(saveTransformations):
	* nucleo/gl/scenegraph/sgNode.H:
	Interface functions for saving and restoring a transformation

	* nucleo-config.in:
	* nucleo.pc.in:
	Fixed the CPPFLAGS flags

	* nucleo/Makefile.am:
	* nucleo/***.cxx
	* nucleo/***.H
	Applied the following sane principals: do not install config.H,
	never include config.H in a header and always include (first)
	config.H in a source file.
	Yes, I started the nucleo switch in metisse.

2003-12-18  Olivier Chapuis  <olivier.chapuis@free.fr>
	
	* configure.ac:
	NUCLEO_* variables clean-up

	* test/Makefile.am:
	* demos/vnc/Makefile.am:
	* nucleo/plugins/**Makefile.am:
	Install plugins under libdir/nucleo and removed the lib prefix.
	For vnc and ffmpeg, finally, build shared libraries.

	* docs/MacOSX/nTest.in:
	To be consistent with the Makefile, expand $datadir and replace
	@prefix@/share/ by $datadir.

2003-12-17  Nicolas Roussel  <roussel@lri.fr>

	* nucleo/plugins/**Makefile.am
	Moved each plugin description back into the corresponding directory.
	Changed the way plugins are built with libtool (added a -module switch).
	The description now takes the dlopen name from the library.
	Some plugins (ffmpeg and vnc) are now built as a static library as
	well, so they can be linked (needed by vnc-relay for example).
	
	* tests/Makefile.am: 
	Added test-speed and test-MemAlloc

2003-12-16  Olivier Chapuis  <olivier.chapuis@free.fr>

	* bootstrap:
	Allowed to use automake-1.8 (less buggy than 1.7?)

	* configure.ac:
	* **/Makfile.am:
	Added .SILENT in all Makfile.am and a way to disable this mode by
	setting DISABLE_SILENT in configure.ac.

2003-12-16  Nicolas Roussel  <roussel@lri.fr>

	* configure.ac: 
	* docs/MacOSX/nTest.in: 	
	* docs/MacOSX/Makefile.am: 
	Fixed nTest bug (executable was not found when not iin current directory)
	nTest is now generated and installed with nucleo-config and others in bin/
	
	* docs/MacOSX/nTest: 
	Script has been modified to handle libtool-made programs.

	* nucleo/Makefile.am: 
	* nucleo/image/processing/Makefile.am: 
	Added two dummy .cxx files so that libtool links with g++ instead
	of gcc in these directories as in the others. This fixes a bug on
	Mac OS X where everything compiled but nothing was executable
	because of the gcc/g++ mix.

2003-12-15  Olivier Chapuis  <olivier.chapuis@free.fr>

	* nucleo/core/Makefile.am:
	* configure.ac:
	Fixed the definition of the plugin list dir and the plugin dir.
	Unfortunately, I do not see how to put these values in nucleo/config.H

2003-12-15  Olivier Chapuis  <olivier.chapuis@free.fr>

	* configure.ac:
	* Makefile.am: 
	Set "silent" mode for make and disable static library by default

2003-12-11  Olivier Chapuis  <olivier.chapuis@free.fr>

	* tests/test-glWindow.cxx:
	* nucleo/gl/window/glWindow_GLX.H:
	* nucleo/gl/window/glWindow_GLX.cxx (_getAtom), (_checkNetSupported),
	(_ewmhFullScreenMode), (fullScreenMode):
	Re-added ewmh full screen method from videospace plus some fixes
	and coments (switching between full screen mode and original size works
	now; some remarks on applications which starts fullscreen and want to
	desactivate this state; apply this logic in the test).

	* demos/vnc/vnc-relay.cxx (main):
	* nucleo/plugins/vnc/vncImageSource.H:
	* nucleo/plugins/vnc/vncImageSource.cxx (start), (react):
	Connected the image source to the reactive engine via a file keeper.
	Fixed the CutText msg (from videospace).

	* nucleo/gl/window/glWindow_GLX.cxx (setup), (glWindow_GLX), (react):
	Fixed (?) the relation with the file keeper

	* tests/Makefile.am:
	* tests/test-glWindow.cxx (main): 
	Enabled and fixed (quadro -> nucleo)

	* nucleo/core/ReactiveEngine.cxx (oneStep):
	Fixed maxFd for stdin

2003-12-10  Olivier Chapuis  <olivier.chapuis@free.fr>

	* **/Makefile.am:
	Added -I${top_builddir}/ to the AM_CPPFLAGS to be sure that config.H
	is found

	* tests/test-plugins.cxx (main):
	* configure.ac:
	* nucleo/core/PluginManager.cxx (PluginManager), (_refreshPluginList):
	* nucleo/core/PluginManager.H:
	* nucleo/plugins/Makefile.am: 
	Build the plugin list and install it under configdir (prefix/share).
	The PluginManager knows how to found the plugin list and the
	plugins installed by nucleo (we may imagine more complex procedure
	for supporting external plugin). You may also pass a plugin directory
	*and* a plugin list dir to the plugin manage (may be, it will be better
	to pass a plugin file). 

2003-12-09  Olivier Chapuis  <olivier.chapuis@free.fr>

	* apps/videoServer/Makefile.am:
	* apps/Makefile.am:
	Rerenaming

	* tests/test-ffmpeg-sink.cxx:
	* tests/Makefile.am:
	Fixed compilation, not the code (some FIXME positioned)
	Note/FIXME: I've used ffmpeg-0.4.8. -lpng is needed for linking, so
	at least for this version HAVE_FFMPEG depends on HAVE_PNG

	* nucleo/plugins/ffmpeg/ffmpegImageSource.H:
	* nucleo/plugins/ffmpeg/ffmpegImageSource.cxx (react), (check),
	(prepare), (ffmpegImageSource):
	Fixed compilation. "if 0" prepare and replace check by prepare.
	"if 0" the Pacemaker. The code should be fixed, some FIXME positioned.

	* configure.ac:
	* nucleo/plugins/ffmpeg/Makefile.am:
	* nucleo/plugins/ffmpeg/test-ffmpeg-sink.cxx
	* tests/test-ffmpeg-sink.cxx:
	* tests/Makefile.am:
	* nucleo/plugins/vnc/Makefile.am:
	* nucleo/plugins/vnc/vnc-relay.cxx:
	* demos/vnc/vnc-relay.cxx:
	* demos/vnc/Makefile.am:
	Moved vnc-relay and test-ffmpeg-sink.cxx

2003-12-09  Olivier Chapuis  <olivier.chapuis@free.fr>

	* .cvsignore
	Begin to add some cvsignore files

	* Makefile.am: 
	Forgot to put LICENCE in the dist
	
	* **/Makefile.am:
	* COPYING.LESSER:
	* LICENSE:
	* AUTHORS:
	* NEWS:
	* README:
	* README.cvs
	* configure.ac:
	* nucleo-config.in:
	* nucleo.pc.in:
	* build-utils/bootstrap:
	Added automake support

	* **/Makefile.in:
	* nucleo/Makefile.subdir.in:
	* nucleo/config.H.in:
	* build-utils/config.guess:
	* build-utils/config.sub:
	* build-utils/install-sh:
	* configure:
	Removed

	* Added a tag "before_automake" (cvs tag before_automake)

	* ChangeLog:
	Add a ChangeLog, we will see if it is used, if not we will remove it.
	If you use (x)emacs try "C-x 4 a" when you edit a file.

