Full name \
email@address

Deadline: 29.4.2026

Instructions:
* The overall goal of this assignment is documenting some part of your own non-trivial program (term project, module of some open source project, etc).
* Usage of generative AI systems (ChatGPT, Copilot, ...) is allowed.
* You can write the report in Czech.
* Submit everything necessary to evaluate your solution (report, program code with annotations, configuration for Doxygen, ...) in one zip file.
  Note that it is enough to provide just a diff of the program source code where I can see documentation annotations.

-----
Tasks
-----

1. Create the configuration file for Doxygen.

   Use the command that creates a default configuration.
   Include here the command.

   You should configure the following:
    * Fill in the tags for project name, project version (pick some number), and brief project description.
    * Make sure that (empty) documentation is created for all source code entities, including those not yet explicitly documented, and also for the private and static members.
    * Set the input directory properly, and enable recursive scanning. Override the default file patterns if needed.
    * Disable the Latex output.
    * Enable the treeview generation for HTML output.
    * Enable automatic brief comments (or use appropriate commands when documenting).

   Paste all changes to the configuration file here.

2. Write documentation for some part of your program.

   Use the features of Doxygen for documenting classes, methods and fields, define some links (references between source code entities).
   In the case of classes and methods, write brief and full descriptions, and for methods include also documentation tags for parameters and returns values.

3. Populate the main page of the documentation with some text.

4. Enable generating of the inheritance diagrams and call graphs (modify the configuration as needed).

5. Check that everything is defined properly by generating the HTML documentation and inspecting the result.
   Include here the command and its output (just on the console, not the HTML files).


-------
Survey:
-------

We use the survey to evaluate the lectures and homework assignments.
It is completely voluntary, but useful for future tuning of the content and level of complexity.
Most questions can be answered using the scale from 1 to 10.
Write your answer just under the corresponding question.

(1) How new was the topic and content of the lecture for you? \
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(1 - brand new, 10 - I already knew everything)


(2) Do you think that the content of this lecture was useful? \
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(1 - useless or too trivial, 10 - very useful)


(3) How do you evaluate the level of complexity of the homework assignment? \
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(1 - too trivial, 5-6 - just about right, 10 - too demanding or complex)


(4) How do you evaluate your prior experience with the tool in the context of the homework assignment? \
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(1 - I already know and can use everything, 10 - I tried everything practically for the first time)


(5) How much time (in minutes) did you spend working on the homework assignment?


(6) Additional space for your own comments on the topic, lecture, and homework assignment:


