-*-*- END -*-*- 2008/01/24 Thomas Bretz * telesto.cc, tpoint/Makefile, tpoint/TPointLinkDef.h, tpoint/skull.xpm, tpoint/TPointIncl.cc, TPointStar.[h,cc], TPointGui.[h,cc]: - added * candrv/nodedrv.cc: - changed NodeGuard to new Thread model * gui/MGCosy.cc: - replaced usage of old MG*Menu classes by the corresponding basic root classes - use root's cleanup facility indstead of MGList where possible - SetOwner of fList to ensure a real cleanup - Prepare for changes in the coordinate classes * main/MSlewing.cc, main/MTracking.cc: - added modifiers to log-stream - prepared for the changes in the coordinate classes * main/MStarguider.cc: - replaced MG*Menu classes by the corresponding root classes - use root's cleanup facility - SetOwner of the fList * base/coord.h: - removed coordinate classes, replaced by new classes from MPointing.h (they are basically identical by now in libmars.so and derived from TVector2) * base/msgqueue.[h,cc]: - simplified the scheme of the message queue using a single thread - now the default is that new messages override pending ones - the development is based on debugging with valgrind - the aim is more stability due to simplification - uses new threading scheme * macros/rootlogon.C: - improved * Makefile: - added telesto - added inlcude directories - renamed cosy.so to libcosy.so * base/MThread.[h,cc]: - implemented new Threading classe(s) -- still to be revised! (should be made part of Mars finally!) * candrv/vmodican.[h,cc]: - adapted to new threading scheme - replaced lout by gLog - removed cast from third argument in ioctl (complains from a 64bit debugger) - removed HandleMessage (now it is one level up -- that's not logical but just simple) - the same applies to SendCanFrame and MsgDescr - thread is not detached anymore * videodev/Camera.[h,cc]: - for the moment the Camera class is removed from the root dictionary - changed to new threading class - thread doesn't run detached anymore - the Camera control is now based on the new MVideo-class - a lot of code has been moved to the new MVideo class - we also support (as a hack for tests) color cameras with different field-of-views - simplified and improved the logic of the loop based on valgrinds output * videodev/VideodevLinkDef.h: - removed Camkera from dictionary * main/MCosy.[h,cc]: - replaced kDeg2Rad and kRad2Deg by TMath - replaced lout by gLog - made a few changes for the new coordinate classes - added cancel points to thread where possible - changed to new threading classes - thread doesn't run detached anymore * candrv/nodedrv.[h,cc], devdrv/macs.[h,cc], devdrv/shaftencoder.[h,cc]: - changed from lout to gLog - added maipulators - removed MLog from the constructor 2008/01/19 Thomas Bretz * cosy.cc: - gave cosy a typical Mars-like implementation - added thread and memory debugging - changed lout to gLog - fixed the problem with TApplication in the gui classes, thus it could now be instantiated as object * devdrv/shaftencoder.cc: - mainly cosmetics - added some initializations suggested by valgrind * gui/MGCosy.h: - removed obsolete forward declaration of TGMenuBar * gui/MGEmbeddedCanvas.[h,cc]: - some cosmetics - correctly replaced ForEach by R__FOR_EACH * main/MStarguider.[h,cc]: - use root's own cleanup facility where possible - set the owenership to fList to ensure deletion - use a simple way to cascade the menues - replace MG*Menu by TG*Menu - improved the switching of the starguider channels. Especially no recreation of the object is done if not necessary 2008/01/18 Thomas Bretz * base/Makefile: - cosmetics * catalog/SlaStars.cc, catalog/Slalib.cc, catalog/StarCatalog.h, gui/MGSkyPosition.cc: - replaced kRad2Deg by TMath::RadToDeg() - replaced kDeg2Rad by TMath::DegToRad() - replaced kPiDiv2 by TMath::Pi()/2 * main/MCaos.cc: - replaced cout by gLog and use color coding - replaced coord.h by MPointing.h 2008/01/16 Thomas Bretz * gui/MGMenu.[h,cc]: - removed * Makefile, Makefile.conf.general, Makefile.conf.linux, Makefile.rules, caos/Makefile, catalog/Makefile, devdrv/Makefile, gui/Makefile, main/Makefile, slalib/Makefile, tcpip/Makefile, videodev/Makefile: - changed all Makefiles to the Mars Makefile style for better performance, maintanance and reliability - some updates for future code * videodev/CaosFilter.h, videodev/FilterLed.h, videodev/PixClient.h, videodev/PixGetter.h, videodev/Writer.h, candrv/sdolist.h: - added virtual destructor as suggested by gcc 4 * devdrv/macs.[h,cc], devdrv/shaftencoder.[h,cc], candrv/canopen.[h,cc], candrv/network.[h,cc], candrv/nodedrv.[h,cc]: - replaced timeval_t* by a const reference in all arguments of member functions * gui/MGEmbeddedCanvas.cc: - replaced C-style includes (iostream.h) with C++ style (iostream) * videodev/FilterLed.cc: - initialized fImg as suggested by valgrind * candrv/canopen.cc, candrv/network.cc, main/MTracking.cc, main/MPpointing.cc, tcpip/MTcpIpIO.cc: - replaced the lout-logging by gLog * candrv/canopen.[h,cc]: - derive from a generalized base class (Interface) now instead of the specialized VmodIcan interface class - added member function to start and stop the underlaying interface - moved the RawCan handling function from VModIcan here (HandleMessage) * candrv/network.[h,cc]: - start interface via CanOpen::Start and stop it via CanOpen::Stop - removed obsolete arguments from constructor - initialize fNodes and fNodeInitialized as suggested by valgrind * gui/MGCoordinate.cc: - SetOwner of fList to make sure that all gui object are properly deleted - initialize the "label"-pointer as suggested by valgrind * gui/MGCosy.h: - removed obsolete forward class declaration of TGMenuBar * gui/MGCoordinate.cc, gui/MGPngReader.cc - SetOwner of fList to make sure that all gui object are properly deleted * main/MTracking.[h,cc]: - use new threading model (uses RunThread and CancelThread instead of Start Stop) - changed return code of Thread from void* to Int_t# - replaced chacking the HasStopFlag by TThread::CancelPoint calls - renamed MPointing to MSlewing to get rid of a namespace conflic with Mars' MPointing * main/MainLinkDef.h: - added the missing + for MCosy and MTracking - replaced MPointing by MSlewing * main/MPointing.[h,cc]: - renamed class to MSlewing - removed * main/MSlewing.[h,cc]: - added * tcpip/MTcpIpIO.[h,cc]: - splitted MTcpIpIO into two base classes, one for input, one for output - made the ports an argument - derived from new threading class - also added a static function to send a frame over a exclusively opened port - replaced old HasStopFlag by new IsThreadCanceled (this is used instead of a CancelPoint to ensure correct cleanup) * tcpip/MDriveCom.h: - updated constructor 2008/01/14 Thomas Bretz * tpoint/gui.C: - added individual reset buttons 2008/01/09 Thomas Bretz * tpoint/gui.C: - some small improvements 2007/06/06 Thomas Bretz * tpoint/*: - added new tpoint files - added starguider tpoint files - cleaned up the tpoints from errorneous detections * tpoint/gui.C: - added option to read collections - added new button to reread tpoints 2007/06/06 Markus Meyer * tpoint/: - added tpoint files from Jan. 2007 to June 2007 2007/03/14 Thomas Bretz * bend.cc, cosy.cc, starg.cc, testse.cc, base/MStarList.cc, base/MThread.cc, base/log.h, base/msgqueue.cc, candrv/nodedrv.cc, candrv/sdolist.cc, catalog/SlaPlanets.cc, catalog/Slalib.cc, catalog/StarCatalog.cc, gui/MGAccuracy.cc, gui/MGCoordinate.cc, gui/MGCoordinates.cc, gui/MGCosy.cc, gui/MGNumStars.cc, gui/MGSkyPosition.cc, main/MBending.cc, main/MStargHistograms.cc, base/coord.h, main/MCaos.cc, main/MCosy.cc, main/MPointing.cc, main/MStarguider.cc, main/MTracking.cc, videodev/FilterLed.cc, videodev/PixClient.cc, videodev/PngReader.cc, videodev/Writer.cc: - replaced obsolete .h by C++ headers - added namespace std * base/MStarList.h: - fixed warnings about overwriting of Delete * base/MStopwatch.h, gui/MGCoordinate.h, gui/MGCoordinates.h, main/MStarguider.h: - fixed warning about overwriting of Print() * base/MTimeout.cc, candrv/nodedrv.cc, devdrv/macs.cc, tcpip/MCeCoCom.cc: - fixed default argument in declaration * catalog/StarCatalog.cc, gui/MGAccuracy.cc, main/MCaos.[h,cc], main/MCosy.cc, main/MPointing.cc, main/MStarguider.cc, main/MTracking.cc: - fixed a type problem (int instead of double) * gui/MGCoordinate.cc, gui/MGCosy.cc: - fixed a warning about double declaration * tcpip/MCeCoCom.h: - renamed Send to SendRep * tcpip/MDriveCom.cc: - replaced Send by SendRep * tcpip/MTcpIpIO.cc: - added missing return 2006/11/01 Thomas Bretz * tpoint/gui.C: - added the horizon - got rid of a warning about a TGraph with 0 points in case the tpoint-file didn't contain magnitudes. 2006/07/18 Thomas Bretz * base/MStar.h: - fixed a really stupid bug in the constructor, which automatically converted the magnitudes into ints. 2006/07/16 Thomas Bretz * leds.txt: - new values * gui/MGCoordinate.cc: - increased size of output text to display sign * gui/MGCosy.cc: - named MACS correctly MACS * gui/MGNumStars.cc: - changed color for correlated stars from magenta to cyan * main/MStarguider.cc: - changed starguider angle to -0.2 - changed pixsize to 48.9 - update num stars only if starguider is switched on - removed bug which caused the rotation angle in fact to be always 0 - reimplemented the algorithm which only takes the n-th brightest stars from the catalog if n is the number of detected stars (otherwise the catalog might be so crowded with stars that one spot is correlated with many catalog stars) - decreased the search region for the LEDs - some things are not done anymore if not necesarry * videodev/FilterLed.[h,cc]: - cleaned up - changed the interface of the ClusterFinder slightly to allow it beeing used for the TPoint spot of the star 2006/07/16 Daniela Dorner * main/MStarguider.[h,cc]: - improvement in showing/hiding of parts of the display in the starguider window * main/MStarguider.cc: - fixed bug in setting menu entry for limiting magnitude 2006/07/14 Thomas Bretz (La Palma) * stargleds.txt: - changed positions slightly * gui/GuiLinkDef.h, gui/Makefile: - added MGNumStars * gui/MGStars.[h,cc]: - addde * gui/MGAccuracy.[h,cc], gui/MGStarg.[h,cc]: - unified - slight changes to layout * gui/MGCoordinate.[h,cc], MGCoordinated.[h,cc]: - added a new mode which allows to suppress the title * gui/MGCosy.[h,cc]: - added new status box (armed) currently switched on by default - adapted to changes in MGAccuracy - disallow changing the size of the window * main/MCaos.cc: - removed an obsolete Print() * main/MCosy.cc: - fixed the name of the log-files (2006 instead of 06) * main/MStarguider.[h,cc]: - implemented new socket to send triggers to Amc (port 7307) - changed standard limiting magnitude from 7.0 to 9.0 - changed layout of display to implement new canvas displaying the number of detected and correlated stars - adapted to changes in MGStarg - added box to change cleaning level of starguider window - set default rotation angle to -0.4deg - disallow changing of window size - CalcTrackingError: check first the number of detected spots and afterwards the number of found catalog stars - CalcTrackingError: just try to correlate all spots with all stars - decreased box size of LED box in starguider mode - replaced circles around starguider pointing position by camara size hexagons - do not show the starguider pointing position if less than three stars could be correlated * tcpip/MTcpIpIO.cc: - fixed a comparison between "signed and unsigned" * videodev/FilterLed.[h,cc]: - implemented DrawHexagon based on MGMap::DrawHexagon - renamed *Circle to *Box - replaced old algorithm to find stars in starguider mode (and LEDs) by a new ClusterFinder class - needs more maintanance! 2006/07/11 Thomas Bretz (La Palma) * Makefile: - changed to support linking with the libmars.so instead of compiling a lot of stuff itself * Makefile.conf.general: - added -DMARSVER * base/BaseLinkDef.h: - removed the now obsolete pragma * base/Makefile - removed the now obsolete files * candrv/Makefile, caos/Makefile, catalog/Makefile, videodev/Makefile, devdrv/Makefile, gui/Makefile, main/Makefile, tcpip/Makefile: - added the new mars include directory * caos/Leds.h, caos/Rings.h: - added an overwrite for Print to make the compiler happy * catalog/StarCatalog.cc: - small improvements to determination of image border by using min- and max-functions * gui/MGCoordinate.cc: - small improvement to layout * gui/MGImage.cc: - fixed 16bit-color mode. The encoding was just wrong * videodev/Camera.cc: - unlock the tread after the broadcast. The reason why it is neccessary in root 4.04/02g to make cosy work is unknown. Anyhow it makes switching the cameras more robust * cosy.cc: - updated writing log-files - implemented sanity check for batch mode * gui/MGAccuracy.cc, gui/MGStarg.cc: - use GetabsDev from MAstro - scale azimuth deviation to real distance on the sky * main/MCosy.[h,cc]: - updated writing log-files - do no perfect position in case of move'n'track - implemented WM_PREPS for predefined positions - unified WM_TRACK and WM_GRB - updated GetFileName * main/MStarguider.cc: - undef EXPERT - some layout changes - set rotation angle of starguider camera to -0.4deg - unified FindStar and FindStarCircle - updated writing log-files - to calc skycenter the X-offset must be subtracted * tcpip/MDriveCom.[h,cc]: - implemented CommandPREPS - implemented CommandARM * videodev/FilterLed.[h,cc]: - unified FindStar and FindStarCircle - fixed algorithm FindStarCircle (it was not working for bright stars and didn't take care of the edge of the image!) - fixed a long outstanding bug which accessed some memory outside the image due to a wrong logical condition 2006/07/11 Daniela Dorner * main/MStarguider.[h,cc]: - implemented function to disable and uncheck an entry in the menu * main/MStarguider.cc: - fixed bugs in (un)checking and en/disabeling items - removed not needed if-clauses - rearranged menu 2006/07/10 Thomas Bretz (La Palma) * slalib/dat.c: - added leap second from 1st January 2006 2006/06/29 Thomas Bretz * main/MStarguider.cc: - fixed a bug which gave a starguider mispointing which was wrong by the pointing position. - fixed also the position of the displayed rings wrt to the catalog sky * catalog/StarCatalog.cc: - replaced some Float_t by Int_t 2006/06/28 Thomas Bretz * main/MStargHistograms.[h,cc]: - removed Center in units of Zd, Az * main/MStarguider.cc: - removed obsolete and dangerous sgcenterzdaz - do not display the sky-centered rings if sky-center is invalid (LEDs not detected) - rais error in this case and send error state to CC - added lower brighness limit of 30 - do not write pointingpos.txt and tracking_error.txt anymore * caos/Ring.h: - added Setter SetXY * catalog/StarCatalog.cc: - fixed that when checking for the region in which stars will be searched only the y- but not the x-offset has been taken into account - added a small region around the region of interest because the catalog position of visible stars might be out of the search region - commented out an obsolete function 2006/05/10 Thomas Bretz * main/MStarguider.cc: - fixed an error returning the correct value in CalcTrackingError - added new value to Starguider report * tcpip/MDriveCom.[h,cc]: - added new value to starguider report 2006/03/23 - Daniela Dorner, Thomas Bretz * main/MStarguider.[h,cc]: - changed starguider algorithm 2006/03/19 - Daniela Dorner * main/MStargHistograms.cc: - changed name of tree from CaOs to Starg * leds.txt, stargleds.txt: - added new leds * main/MCosy.cc: - changed name of tpoint-files, which are written from Cosy, from tpoint*.txt to old-tpoint*.txt * main/MStarguider.[h,cc]: - added StarguiderTpoint Button - included 2 new variables to allow for the implementation of StarguiderTpoints - added writing of StarguiderTpoints to the function CalcTrackingError - StarguiderTpoints are written to tpoint/starg_*.txt - Tpoints are wriiten to tpoint/tpoint_*.txt - added pulldown Mode to Menu - cleaned Menu (removed not needed items, rearanged place of items - removed expertmode - implemented Tpoint- and Starguider-Mode (switches all needed item) put some code into functions therefor - implemented releasing of button, if no tpoint can be taken - fixed small bugs in (un)checking items - removed starguider analyis (writing root-files) from starguider mode to stabilize the code - added 'fGetter->ExitLoop()' before each 'delete fGetter' - added SetDirectory(0) for histogram in starguider 2006/03/11 - Daniela Dorner * tpoint/bending051124.txt: - added 2005/08/29 - Daniela Dorner * main/MStarguider.cc, tcpip/MDriveCom.[h,cc]: - added to variables to the Starguider report 2005/08/22 - Thomas Bretz * candrv/nodedrv.cc, main/MTracking.cc: - fixed usage of MTime (MTime(-1) instead of MTime()) 2005/08/22 - Thomas Bretz * caos/Ring.[h,cc]: - added a sanity check for the case a led entry == NULL * caos/Rings.[h,cc]: - code cleanup - added a sanity check to CalcRings * devdrv/shaftencoder.h: - added new member function GetPosDirCorrected - added new member function GetOffsetDirCorrected * main/MStarguider.cc: - set number of minimum required LEDs for the ring calculation to 3. With two LEDs you can NEVER calculate a ring! - added another sanity check in FindStars * main/MTracking.cc: - replaced ?:-operators by new functions Get*DirCorrected - made sure that if both directions have changed the reset really causes the correct values to be used immediatly! - added some code for future use 2005/07/28 - Florian Goebel * videodev/FilterLed.[cc,h] - add GetMeanPositionCircle and FindStarCircle * devdrv/shaftencoder.[cc,h] - add: fDirHasChanged, fDirChangedPos, fDirChangedOffset, fDirection, fHysteresisPos, fHysteresisNeg * main/MCosy.cc - set faster acceleration and Velocity parameters in TrackPositionGRB * main/MPointing.cc - correct bug which always set speed to LO-SPEED * main/MStarguider.[cc,h] - add new Popup "Operation" (functionality is not ready yet) - add new procedure: FindRoqueLamp - in MStarguider::FindStar now use Leds::FindStarCircle (instead of Leds::FindStar) * main/MTracking.cc - calculate DirHasChanged etc. 2005/04/11 - Thomas Bretz * main/MTracking.cc: - allow to send velocity and request position twice - enhanced some debugging output * candrv/network.[h,cc]: - implemented PrintError * candrv/nodedrv.[h,cc]: - implemented new argument (zombie) to WaitForSdo which allows to mark a missing CANbus message as non-critical 2005/03/21 - Thomas Bretz * tcpip/MDriveCom.[h,cc]: - added a missing white space behind the brightness and fixed the wrong units of Zd/Az in the starguider report 2005/03/17 - Thomas Bretz * main/MCosy.[h,cc]: - implemented WM_GRB and TrackPositionGRB for GRB mode * main/MStarguider.cc: - added 'status' to FINDSTAR-REPORT - send STARG-REPORT only if Starguider is switched on - enhanced output in starguider report * tcpip/MCeCoCom.cc: - tried to backengineer the CC-REPORT because it is not documented in the CC TDAS - changed critical values for windspeed from 10/20/30 to 30/40/50 * tcpip/MDriveCom.[h,cc]: - implemented handling of GRB command - enhanced SendStargReport. Starguider Report now: misszd[%05.3f] missaz[%05.3f] nomzd[%c %03d %02d %03d] nomaz[%c %03d %02d %03d] centerx[%05.1f] centery[%05.1f] n[%04d] bright[%03.1f] mjd[%12.6f]