Hi,<br><br>With regards to the recent discussion on documentation, I have a couple of concrete suggestions of things we might do.  One is we should stop the problem from getting any worse than it is by making a rule that no code should be checked into the repository without documentation.  Ideally, one would have someone review each commit, but I don't think anyone in this project would have the time for that.  But nonetheless, if someone notices that someone else checked in something significant without documentation, I think it should be considered fair to roll back the commit until they've documented what they've done, especially if it's a commit to the CLAM library.
<br><br>Does anyone have any thoughts on what documentation conventions would ideally be followed?  Pau you mentioned that code documentation will soon be shown automatically in the NetworkEditor.  So, you'll probably have something to say about how it should be formatted....  But nonetheless, I would suggest something along the following lines:
<br><br>/***************************************************/<br>
/*! \class SomeClass<br>
    \brief SomeClass implements waveguide modeling.<br>
<br>
    This class uses banded waveguide techniques to<br>
    model a variety of sounds, including bowed<br>
    bars, glasses, and bowls.  For more<br>
    information, see Essl, G. and Cook, P. "Banded<br>
    Waveguides: Towards Physical Modelling of Bar<br>
    Percussion Instruments", Proceedings of the<br>
    1999 International Computer Music Conference.<br>
<br>
    \author John Smith [<a href="mailto:jsmith@someurl.edu">jsmith@someurl.edu</a>] 08/10/2007<br>    \since CLAM v1.2<br><br>
*/<br>
/***************************************************/<br>
class SomeClass<br>{<br> public:<br>  //! Class constructor.<br>  SomeClass();<br><br>  //! Class destructor.<br>  ~SomeClass();<br><br>  /**<br>   *  Non-supervised Do method.  Produces as output the synthesized audio<br>
   *  for the waveguide model.<br>   *<br>   *  \param position - strike position [0 - 1]<br>   *  \param amplitude - amplitude of the strike [0-1]<br>   *  \param out - the outgoing audio synthesized from the given parameters
<br>   *<br>   *  \exception throws an IllegalArgumentException if the parameter values are out of their allowed range<br>   */<br>  void Do(SomeType position, SomeType amplitude, Audio& out)<br><br>};<br><br>Best,<br>
Greg<br>