2019-08-07 18:01:08 -07:00
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
< html xmlns = "http://www.w3.org/1999/xhtml" >
< head >
< title > OR-Tools< / title >
< meta http-equiv = "Content-Type" content = "text/html;" / >
< meta charset = "utf-8" / >
<!-- <link rel='stylesheet' type='text/css' href="https://fonts.googleapis.com/css?family=Ubuntu:400,700,400italic"/> -->
< link rel = "stylesheet" type = "text/css" href = "ortools.css" title = "default" media = "screen,print" / >
< script type = "text/javascript" src = "jquery.js" > < / script >
< script type = "text/javascript" src = "dynsections.js" > < / script >
< / head >
< body >
< div id = "banner-container" >
< div id = "banner" >
2020-01-27 13:48:26 +01:00
< span id = "sfml" > Google OR-Tools 7.5< / span >
2019-08-07 18:01:08 -07:00
< / div >
< / div >
< div id = "content" style = "width: 100%; overflow: hidden;" >
< div style = "margin-left: 15px; margin-top: 5px; float: left; color: #145A32;" >
2019-08-12 09:16:03 -07:00
< h2 > C++ Reference< / h2 >
2019-08-07 18:01:08 -07:00
< ul >
< li > < a href = "../cpp_algorithms/annotated.html" > Algorithms< / a > < / li >
2019-08-12 09:16:03 -07:00
< li > < a href = "../cpp_sat/annotated.html" > CP-SAT< / a > < / li >
2019-08-07 18:01:08 -07:00
< li > < a href = "../cpp_graph/annotated.html" > Graph< / a > < / li >
< li > < a href = "../cpp_routing/annotated.html" > Routing< / a > < / li >
< li > < a href = "../cpp_linear/annotated.html" > Linear solver< / a > < / li >
< / ul >
< / div >
< div id = "content" >
< div align = "center" >
< h1 style = "color: #145A32;" > C++ Reference: CP-SAT< / h1 >
< / div >
2020-01-27 13:48:26 +01:00
<!-- Generated by Doxygen 1.8.18 -->
2019-08-07 18:01:08 -07:00
< div id = "navrow1" class = "tabs" >
< ul class = "tablist" >
< li > < a href = "namespaces.html" > < span > Namespaces< / span > < / a > < / li >
< li > < a href = "annotated.html" > < span > Classes< / span > < / a > < / li >
< li > < a href = "files.html" > < span > Files< / span > < / a > < / li >
< / ul >
< / div >
< / div > <!-- top -->
< div class = "header" >
< div class = "headertitle" >
< div class = "title" > Graph Legend< / div > < / div >
< / div > <!-- header -->
< div class = "contents" >
< p > This page explains how to interpret the graphs that are generated by doxygen.< / p >
2020-01-27 13:48:26 +01:00
< p > Consider the following example: < / p > < div class = "fragment" > < div class = "line" > < span class = "comment" > /*! Invisible class because of truncation */< / span > < / div >
< div class = "line" > < span class = "keyword" > class < / span > Invisible { };< / div >
< div class = "line" > < span class = "comment" > < / span > < / div >
< div class = "line" > < span class = "comment" > /*! Truncated class, inheritance relation is hidden */< / span > < / div >
< div class = "line" > < span class = "keyword" > class < / span > Truncated : < span class = "keyword" > public< / span > Invisible { };< / div >
2019-11-14 13:52:51 -08:00
< div class = "line" > < / div >
2020-01-27 13:48:26 +01:00
< div class = "line" > < span class = "comment" > /* Class not documented with doxygen comments */< / span > < / div >
< div class = "line" > < span class = "keyword" > class < / span > Undocumented { };< / div >
< div class = "line" > < span class = "comment" > < / span > < / div >
< div class = "line" > < span class = "comment" > /*! Class that is inherited using public inheritance */< / span > < / div >
< div class = "line" > < span class = "keyword" > class < / span > PublicBase : < span class = "keyword" > public< / span > Truncated { };< / div >
< div class = "line" > < span class = "comment" > < / span > < / div >
< div class = "line" > < span class = "comment" > /*! A template class */< / span > < / div >
< div class = "line" > < span class = "keyword" > template< / span > < < span class = "keyword" > class< / span > T> < span class = "keyword" > class < / span > Templ { };< / div >
< div class = "line" > < span class = "comment" > < / span > < / div >
< div class = "line" > < span class = "comment" > /*! Class that is inherited using protected inheritance */< / span > < / div >
< div class = "line" > < span class = "keyword" > class < / span > ProtectedBase { };< / div >
< div class = "line" > < span class = "comment" > < / span > < / div >
< div class = "line" > < span class = "comment" > /*! Class that is inherited using private inheritance */< / span > < / div >
< div class = "line" > < span class = "keyword" > class < / span > PrivateBase { };< / div >
< div class = "line" > < span class = "comment" > < / span > < / div >
< div class = "line" > < span class = "comment" > /*! Class that is used by the Inherited class */< / span > < / div >
< div class = "line" > < span class = "keyword" > class < / span > Used { };< / div >
< div class = "line" > < span class = "comment" > < / span > < / div >
< div class = "line" > < span class = "comment" > /*! Super class that inherits a number of other classes */< / span > < / div >
< div class = "line" > < span class = "keyword" > class < / span > Inherited : < span class = "keyword" > public< / span > PublicBase,< / div >
< div class = "line" > < span class = "keyword" > protected< / span > ProtectedBase,< / div >
< div class = "line" > < span class = "keyword" > private< / span > PrivateBase,< / div >
< div class = "line" > < span class = "keyword" > public< / span > Undocumented,< / div >
< div class = "line" > < span class = "keyword" > public< / span > Templ< int> < / div >
2019-11-14 13:52:51 -08:00
< div class = "line" > {< / div >
2020-01-27 13:48:26 +01:00
< div class = "line" > < span class = "keyword" > private< / span > :< / div >
2019-11-14 13:52:51 -08:00
< div class = "line" > Used *m_usedClass;< / div >
< div class = "line" > };< / div >
< / div > <!-- fragment --> < p > This will result in the following graph:< / p >
< center > < img src = "graph_legend.png" alt = "" class = "inline" / > < / center > < p > The boxes in the above graph have the following meaning: < / p >
2019-08-07 18:01:08 -07:00
< ul >
< li >
A filled gray box represents the struct or class for which the graph is generated. < / li >
< li >
A box with a black border denotes a documented struct or class. < / li >
< li >
A box with a gray border denotes an undocumented struct or class. < / li >
< li >
A box with a red border denotes a documented struct or class forwhich not all inheritance/containment relations are shown. A graph is truncated if it does not fit within the specified boundaries. < / li >
< / ul >
< p > The arrows have the following meaning: < / p >
< ul >
< li >
A dark blue arrow is used to visualize a public inheritance relation between two classes. < / li >
< li >
A dark green arrow is used for protected inheritance. < / li >
< li >
A dark red arrow is used for private inheritance. < / li >
< li >
A purple dashed arrow is used if a class is contained or used by another class. The arrow is labelled with the variable(s) through which the pointed class or struct is accessible. < / li >
< li >
A yellow dashed arrow denotes a relation between a template instance and the template class it was instantiated from. The arrow is labelled with the template parameters of the instance. < / li >
< / ul >
< / div > <!-- contents -->
< / div >
< / div >
< div id = "footer-container" >
< div id = "footer" >
< / div >
< / div >
< / body >
< / html >