Doxygen
Loading...
Searching...
No Matches
defgen.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

void generateDEF ()
 

Function Documentation

◆ generateDEF()

void generateDEF ( )

Definition at line 482 of file defgen.cpp.

483{
484 QCString outputDirectory = Config_getString(OUTPUT_DIRECTORY)+"/def";
485 Dir defDir(outputDirectory.str());
486 if (!defDir.exists() && !defDir.mkdir(outputDirectory.str()))
487 {
488 err("Could not create def directory in {}\n",outputDirectory);
489 return;
490 }
491
492 QCString fileName=outputDirectory+"/doxygen.def";
493 std::ofstream f = Portable::openOutputStream(fileName);
494 if (!f.is_open())
495 {
496 err("Cannot open file {} for writing!\n",fileName);
497 return;
498 }
499 TextStream t(&f);
500 t << "AutoGen Definitions dummy;\n";
501
502 if (Doxygen::classLinkedMap->size()+
505 {
506 for (const auto &cd : *Doxygen::classLinkedMap)
507 {
508 generateDEFForClass(cd.get(),t);
509 }
510 for (const auto &fn : *Doxygen::inputNameLinkedMap)
511 {
512 for (const auto &fd : *fn)
513 {
514 generateDEFForFile(fd.get(),t);
515 }
516 }
517 for (const auto &nd : *Doxygen::namespaceLinkedMap)
518 {
519 generateDEFForNamespace(nd.get(),t);
520 }
521 }
522 else
523 {
524 t << "dummy_value = true;\n";
525 }
526}
Class representing a directory in the file system.
Definition dir.h:75
static NamespaceLinkedMap * namespaceLinkedMap
Definition doxygen.h:115
static FileNameLinkedMap * inputNameLinkedMap
Definition doxygen.h:105
static ClassLinkedMap * classLinkedMap
Definition doxygen.h:96
This is an alternative implementation of QCString.
Definition qcstring.h:101
const std::string & str() const
Definition qcstring.h:537
Text streaming class that buffers data.
Definition textstream.h:36
#define Config_getString(name)
Definition config.h:32
static void generateDEFForClass(const ClassDef *cd, TextStream &t)
Definition defgen.cpp:302
static void generateDEFForFile(const FileDef *fd, TextStream &t)
Definition defgen.cpp:450
static void generateDEFForNamespace(const NamespaceDef *nd, TextStream &t)
Definition defgen.cpp:422
#define err(fmt,...)
Definition message.h:127
std::ofstream openOutputStream(const QCString &name, bool append=false)
Definition portable.cpp:665

References Doxygen::classLinkedMap, Config_getString, err, Dir::exists(), generateDEFForClass(), generateDEFForFile(), generateDEFForNamespace(), Doxygen::inputNameLinkedMap, Dir::mkdir(), Doxygen::namespaceLinkedMap, Portable::openOutputStream(), and QCString::str().

Referenced by generateOutput().