1

i am currently working with CAPL (CANoe) and was wondering, if there is a way to use doxygen to document my CAPL-code. I have used doxygen before, on a project working with C++ and was very happy with it.

I have found something that sounds very promising (https://github.com/BretislavRychta/CAPL-filter-for-Doxygen), but unfortunately I can't get it to work.

If someone could tell me how to make it work, or give me an alternative solution to document my CAPL code (using doxygen or something else), I would be very happy :)

Here is an example of the CAPL Code:

on start
{
  write("Started!");
  set_id();
  version_proposal();
}

void set_id()
{
  msg_test.id = node_number;
  msg_test.dlc = msg_dlc;

  msg_test.can = 1;
}

I edited the Doxyfile, with the changes recommended, and I'm also having Trouble with the INPUT_FILTER.... I tried it in the following way, which I think is right, and in some other variations, but it isn't working.

INPUT_FILTER           = "perl C:\Users\gerdes\Desktop\Doxygen Test\capl_filer.pl"
  • What kind of problems do you observe? On which platform do you run doxygen? Which version of doxygen are you using? Post also a small example of code to be converted. – albert Jul 13 '18 at 09:13
  • I am running doxygen Version 1.8.14 on Windows 7 Enterprise. The main Problem is, that i dont really know how to insert the commands given in the description of the git-repository and what Perl has to do with everything. –  Jul 13 '18 at 09:28

1 Answers1

0

The, minimal, description at https://github.com/BretislavRychta/CAPL-filter-for-Doxygen is for Linux and similar systems. For Windows there is a small change required.

INPUT_FILTER = capl_filter.pl

works OK for Linux due to the possibility to automatically start the perl file. On windows we need:

INPUT_FILTER = "perl <path_to>/capl_filter.pl"

in case '' we need:

INPUT_FILTER = "perl \"<path_to>/capl_filter.pl\""

albert
  • 8,285
  • 3
  • 19
  • 32
  • Thank you for your answer. I tried out, what you said, but i still have some Problems... In the Picture in my Question you can see how i did it. Can you tell me, if this is the right way to do it? –  Jul 16 '18 at 07:49
  • Which error message do you get? Which version of perl are you using? When you start doxygen with `-d extcmd` as extra option (before the Doxyfile) you will get some linse saying which command has been started. – albert Jul 16 '18 at 07:59
  • Aach... I now see the problem (I think) `Doxygen Test` a space in the Path, is asking for problems. Please try `INPUT_FILTER = "perl \"C:\Users\gerdes\Desktop\Doxygen Test\capl_filer.pl\"" – albert Jul 16 '18 at 08:14
  • It is working now. My last mistake was just a typo in the doxyfile *facepalm*. Thank you albert :) –  Jul 16 '18 at 12:24