2001-06-27 Sebastian Wilhelmi * Makefile: Random updates to web site retrieval. * README.release: New file with release procedure * convert_to_namespace: script to convert old PVM++-programs to work with new PVM++. * examples/*.cc, examples/*.hh, tests/pack-test.cc: Adapt to namespace changes. * *.cc, *.hh, *.ii, pvm++/generate_pack_ii.sh: Now all objects are inside a proper namespace (Pvm) instead of prepending this to every name. So PvmHost is now Pvm::Host. * internal.hh, internal.ii: Made Internal a namespace with functions instead of a class with static functions. Because there is no "friend namespace", a class is still necessary to poke inside PvmStruct. 2001-06-20 Sebastian Wilhelmi * *.cc, *.hh, *.ii, pvm++/generate_pack_ii.sh: Prepended vector, map, multimap, set, multiset, string, complex etc. with std:: to accomodate gcc-3.0 * pvm++/host.ii, pvm++/task.ii: Also included again to make gcc-3.0 happy. * pvm++/tasktabletype.cc: Replaced hack by right solution now that we have gcc-3.0. * examples/mult/sched.cc, pvm++/handlertabletype.hh, pvm++/hostset.hh, pvm++/hosttabletype.hh, pvm++/structset.hh, pvm++/taskset.hh, pvm++/tasktabletype.hh, tests/pack-test.cc: Removed 'less< type >' argument to map and set, now that default arguments are working. * pvm++/generate_pack_ii.sh: Don't include in pack.ii, as that can't be packed. Don't ifdef out multiset and mutlimap, as they this will only work with gcc-3.0 anyways. * pvm++/struct.hh: Corrected documentation accordingly. 2001-02-02 Sebastian Wilhelmi * Released 0.5.1. * Makefile.am (GetCurrentWeb): Changed Webaddress to sourceforge. 2001-02-01 Sebastian Wilhelmi * pvm++/*.cc, pvm++/*.ii, pvm++/*.hh, COPYING: Updated to GNU Lesser General Public License. * tests/pack-test.cc: Completed. * pvm++/custom.hh: Made PvmCustom::Pack() const and added virtual destructor. * pvm++/custom.cc: Added file. Just includes an empty virtual destructor for PvmCustom. * pvm++/Makefile.am: Adpated accordingly. * pvm++/generate_pack_ii.sh: Generate PvmRegister etc. for PvmCustom, do not generate PvmRegisterArray etc for PvmStruct (and PvmCustom). * examples/mult/random.hh: Some new random methods. * tests/pack-test.cc: Move along the test case. More to follow. 2001-01-30 Sebastian Wilhelmi * tests, tests/pack-test.cc, tests/Makefile.am, Makefile.am, configure,in: Added new tests directory for regression testing. * pvm++/class.hh, pvm++/emptystruct.hh, pvm++/host.hh, pvm++/hosttabletype.hh, pvm++/receiveaction.hh, pvm++/struct.hh, pvm++/structset.hh, pvm++/task.hh, pvm++/tasktabletype.hh: Moved all private sections of the classes to the end of the declaration. * pvm++/generate_pack_ii.sh: unsigned short -> unsigned short int. * pvm++/generate_pack_ii.sh: Removed deque from the transmittable tyoes, as it only is a derived type and can't be packed easily and efficient in a standard compliant way. * pvm++/handlertabletype.cc: Added missing braces again. * pvm++/handlertabletype.cc, pvm++/host.cc, pvm++/struct.cc, pvm++/structset.cc, pvm++/task.cc: Added all necessary initializations call to Pvm () again. * pvm++/structset.cc, pvm++/structset.hh, pvm++/internal.hh, pvm++/internal.cc: Moved PvmStructSet::InternalReceive to PvmInternal::ReceiveSelect. 2001-01-26 Sebastian Wilhelmi * pvm++/generate_pack_ii.sh, pvm++/struct.hh: Also generate PvmPack, PvmUnPack and PvmRegister for PvmStruct, thus having to add those as friends to PvmStruct. * pack.ii: Removed, as it is generated. * pvm++/structset.cc, pvm++/structset.hh, pvm++/structset.ii: Factored out some common code. Made the UseSelect computation not take place all the time. * pvm++/host.hh: A little bit of include shuffling. * pvm++/emptystruct.cc, pvm++/emptystruct.hh, pvm++/struct.hh: Use PvmStructId instead of int, where applicable. * pvm++/host.cc, pvm++/struct.cc, pvm++/structset.cc, task.cc: Removed unnecessary initialization calls to Pvm (). * configure.in: Bumped version to 0.5.1. * *.hh, *.ii, *.cc: Reindentation to GNU standard. * pvm++/Makefile.am: Also distribute pvm++/generate_pack_ii.sh. * pvm++/generate_pack_ii.sh, pvm++/pack.ii: Fixed bug, that prevented STL types from being unpacked. 2001-01-25 Sebastian Wilhelmi * Released version 0.5.0. * Upgraded to libtool-1.3.5. 2001-01-24 Sebastian Wilhelmi * pvm++/handlertabletype.cc, pvm++/handlertabletype.hh: Removed IsAutoUnpackForMe again, as destructors can not call virtual functions. * pvm++/struct.cc, pvm++/struct.hh: Now PvmStruct has a new member StructIdForAutomaticUnpack, which defaults to -1. It is only set to the StructId for AutomaticUnpack to that Struct. If StructIdForAutomaticUnpack is set in destructor, it is removed from HandlerTable. * pvm++/internal.cc: Include necessary headers for select(2). * pvm++/receiveaction.hh: Corrected documentation. * doc/Makefile.am (FILES): Adapted to new layout. * examples/talk/pvm_talk_server.cc (main): Made int to conform to standards. * configure.in (CXXFLAGS): Added -Wunused -Wmissing-prototypes -Wmissing-declarations for GCC. * pvm++/handlertabletype.cc, pvm++/handlertabletype.hh: New method IsAutoUnpackForMe in PvmHandlerTableType. This returns true, whenever the parameter struct is the destination of the AutoUnpack policy. * pvm++/struct.cc, pvm++/struct.hh, pvm++/struct.ii: Moved ~PvmStruct from struct.ii to struct.cc. If IsAutoUnpackForMe returns true for the current struct in the destructor, NormalReceive is installed for this Struct. 2001-01-22 Sebastian Wilhelmi * configure.in: Prepare release 0.5.0. * configure.in: select requires unistd.h on FreeBSD. * configure.in: Check for pvm++/class.cc instead of pvm++/pvmclass.cc. * pvm++.m4: Added new pathes to look for PVM. * examples/mult/random.hh: Added includes. * A much simpler method of packing and unpacking is chosen now: Instead of letting PvmRegister just register the type to some database it now simly packs and unpacks itself. So we don't need the database (PvmPackDesc) anymore. PvmRegister now tests, whether a flag for unpacking is set and calls PvmUnPack then. If it's not set, ist just calls PvmPack. * We also don't need StructTableType anymore. This was only used to store an instance of a PvmStruct to be able to get a new instance (via GetNewInstance). This is done directly in PvmHandlerTableType now. * base.hh, packtab.cc, pvmbase.cc, pvmpack.cc, custom.hh: Removed PvmPackDesc, PackDescTableType and PvmBase and thus base.hh, packtab.cc, pvmbase.cc and pvmpack.cc. PvmCustom moved to custom.hh. * handtab.cc, handlertabletype.cc: Removed handtab.cc. Renamed HandlerTableType to PvmHandlerTableType and moved to handlertabletype.cc * hosttab.cc, hosttabletype.cc: Removed hosttab.cc. Moved PvmHostTableType to hosttabletype.cc * hosttask.hh, hostentry.hh, host.hh, host.ii, taskentry.hh, task.hh, task.ii, taskset.hh, hostset.hh: Removed hosttask.hh. Moved PvmHostEntry to hostentry.hh, PvmHost to host.hh and inline functions to host.ii and made the inline functions using PvmHostEntry to normal functions in host.cc, PvmTaskEntry to taskentry.hh, PvmTask to task.hh and inline functions to task.ii and made the inline functions using PvmTaskEntry to normal functions in task.cc, PvmTaskSet to taskset.hh, PvmHostSet to hostset.hh. * pvmtask.cc, task.cc: Removed pvmtask.cc. Moved PvmTask to task.cc. * pvmclass.cc, class.cc: Removed pvmclass.cc. Moved PvmClass to class.cc. * pvmhost.cc, host.cc, hostset.cc: Removed pvmhost.cc. Moved PvmHost to host.cc and PvmHostSet to hostset.cc * pvmint.cc, internal.cc: Removed pvmint.cc. Moved PvmInternal to internal.cc. * pvmint.hh, internal.hh, hosttabletype.hh, tasktabletype.hh, received.hh: Removed pvmint.hh. Renamed HostTableType to PvmHostTableType and moved to hosttabletype.hh. Renamed TaskTableType to PvmTaskTableType and moved to tasktabletype.hh. Renamed HandlerTableType to PvmHandlerTableType and moved to handlertabletype.hh. Renamed Received to PvmReceived and moved to received.hh. Moved PvmInternal to internal.hh * pvmstruc.cc, struct.cc, emptystruct.cc, structset.cc: Removed pvmstruc.cc. Moved PvmStruct to struct.cc, PvmEmptyStruct to emptystruct and PvmStructSet to structset.cc. * struct.hh, receiveaction.hh, receiveaction.ii, struct.ii, structset.hh, structset.ii: Moved PvmReceiveAction to receiveaction.hh and inline functions to receiveaction.ii, PvmStruct inline functions to struct.ii, PvmEmptyStruct to emptystruct.hh and inline functions to emptystruct.ii, PvmStructSet to structset.hh and inline functions to structset.ii. Moved PvmRegister for STL-Types to pack.ii. * structab.cc: Removed StructTableType and structab.cc. * tasktab.cc, tasktabletype.cc: Removed tasktab.cc. TaskTableType renamed to PvmTaskTableType and moved to tasktabletype.cc. * private.hh: New File. Includes all private (not installed) header files. * pvm++.hh, class.hh, class.ii: Moved PvmClass to class.hh and inline functions to class.ii. Now only includes all public header files. * types.hh: Forward declare all public classes plus PvmHostEntry and PvmTaskEntry. * privatetypes.hh: Forward declare all private classes. * pack.hh, pack.ii, generate_pack_ii.sh: Now all inline functions of pack.hh are autogenerated by the shell script generate_pack_ii.sh and end up in pack.ii. pack.hh is removed thus. * Makefile.am: Reflect the above changes. 2000-01-20 Sebastian Wilhelmi * new release, version 0.4.6 1999-11-10 Sebastian Wilhelmi * doc/Makefile.am (FILES): Use png insted of gif. * pvm++.m4: Made test for pvm-aux-libs more robust. 1999-11-03 Sebastian Wilhelmi * new release, version 0.4.5 * examples/mult/*.cc: Made gcc warnings disappear. * pvm++/pvm++.hh, pvm++/hosttab.cc, pvm++/pvmclass.cc: Made 'IntNumOfArchs' static to fix a bug, that showed up with gcc-2.95.2. * Updated to libtool-1.3.3. * examples/*/Makefile.am, configure.in: Various fixups, use CXXFLAGS and PROG_LDFLAGS instead of PVM_P_P_CFLAGS and PROG_LDFLAGS resp. * doc/Makefile.am (dist-hook): Made 'make distcheck' work. * pvm++.m4: Added /usr/lib/pvm3 and /usr/local/lib/pvm3 to POSSIBLE_PVM_DIRS. * configure.in: Add -Wall, if gcc is used. 1998-06-18 Sebastian Wilhelmi * pvm++.m4: Corrected --with-options 1998-06-03 Sebastian Wilhelmi * new release, version 0.4.4 1998-06-02 Sebastian Wilhelmi * pvm++/pvmint.cc, configure: added a check to detect the right parameter to select(3c) * pvm++/pvmint.cc: made an explicit cast to prevent temporaries on reference arguments to CalcRestTime(). 1998-04-07 Sebastian Wilhelmi * Makefile.am, configure.in, pvm++.m4: included pvm++.m4 for easy autoconf'ing dependend stuff. 1998-03-20 Sebastian Wilhelmi * Updated to libtool-1.2 1998-03-02 Sebastian Wilhelmi * new release, version 0.4.3 * added examples/talk to distribution * pvm++/pvm++.hh: moved and uninlined PvmMyThrow, a quick hack due to icomplete EH in gcc to pvm++/pvmclass.cc * pvm++/struct.hh, pvm++/pvmstruc.cc, pvm++/pvmint.hh, pvm++/pvmint.cc: Added a select(3c)-like functionality to PvmStructSet. * configure.in: Fixed bug, which prevented the --with options from working. * pvm++/pvm++.hh: Defined MICROSEC, which is not part of every UNIX, it seems. 1998-02-20 Sebastian Wilhelmi * Added documentation to the header-files for automatic html-documentation generation with perceps. 1998-02-11 Sebastian Wilhelmi * pvm++/struct.hh (class PvmStructSet): added IgnoreTask default parameter for the From parameter to the PvmStructSet. * added examples/mult to distribution 1998-02-09 Sebastian Wilhelmi * new release, version 0.4.2 * changed configure.in to search for pvm-libs and aux-libs * added examples/forkjoin to distribution 1998-02-06 Sebastian Wilhelmi * bug-fix release, version 0.4.1 * pvm++/pvmpack.cc (UnPack, Pack): Added Bool-type. * pvm++/base.hh (class PvmBase): Added Bool-type. * pvm++/pack.hh: Added PvmRegister for bool. * pvm++/pvmtask.cc (Refresh, Add): Make sure, the PVM is startet. * pvm++/pvmstruc.cc (GetPackDesc, *Receive* ): Make sure, the PVM is startet. * pvm++/pvmhost.cc (Get, Tasks): Make sure, the PVM is startet. * pvm++/tasktab.cc (Add): hacked insert to compile with gcc 2.7.2 * pvm++/pvmint.cc (Unpack): replaced call to PvmInternal::PvmInternalIndex with corresponding code. * pvm++/pvmint.hh (struct PvmInternal): removed PvmInternal::PvmInternalIndex. * pvm++/struct.hh (PvmRegister): exclude multimap and multiset on gcc < 2.8.0 (class PvmStructSet): removed wrong friend function, added new friend class PvmInternal 1998-01-30 Sebastian Wilhelmi * First release of pvm++, version 0.4