A Discrete-Event Network Simulator
API
Loading...
Searching...
No Matches
environment-variables.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2022 Lawrence Livermore National Laboratory
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2 as
6 * published by the Free Software Foundation;
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program; if not, write to the Free Software
15 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
16 *
17 * Author: Peter D. Barnes, Jr. <pdbarnes@llnl.gov>
18 */
19
20// This file supplies Doxygen documentation only.
21// It should *NOT* be included in the build.
22
23/**
24 * \ingroup system
25 * \defgroup core-environ Environment Variables
26 */
27
28/**
29 * \ingroup core-environ
30 * \brief Initialize an ns3::Attribute
31 *
32 * Sets a new default \pname{value} for an Attribute.
33 * This is invoked if the ns3::Object being constructed has an Attribute
34 * matching \pname{name}, and that Attribute didn't appear in the
35 * ns3::AttributeConstructionList argument to ns3::ObjectBase::ConstructSelf.
36 * The ns3::AttributeConstructionList is typically createad by an ns3::ObjectFactory
37 * and populated by ns3::ObjectFactory::Set.
38 *
39 * All objects with an Attribute matching \pname{name} will be matched,
40 * so name collisions could wreak havoc.
41 *
42 * <dl class="params">
43 * <dt>%Parameters</dt>
44 * <dd>
45 * <table class="params">
46 * <tr>
47 * <td class="paramname">name</td>
48 * <td>The name of the Attribute to set.</td>
49 * </tr>
50 * <tr>
51 * <td class="paramname">value</td>
52 * <td>The value to set the Attribute to.</td>
53 * </tr>
54 * <tr>
55 * <td class="paramname">;</td>
56 * <td>Multiple \pname{name}=\pname{value} pairs should be delimited by ';'</td>
57 * </tr>
58 * </table>
59 * </dd>
60 * </dl>
61 *
62 * Referenced by ns3::ObjectBase::ConstructSelf.
63 */
64const char* NS_ATTRIBUTE_DEFAULT = "name=value[;...]";
65
66/**
67 * \ingroup core-environ
68 * \brief Write the ns3::CommandLine::Usage message, in Doxygen format,
69 * to the referenced location.
70 *
71 * Set the directory where ns3::CommandLine instances should write their Usage
72 * message, used when building documentation.
73 *
74 * This is used primarily by the documentation builds, which execute each
75 * registered example to gather their ns3::CommandLine::Usage information.
76 * This wouldn't normally be useful to users.
77 *
78 * <dl class="params">
79 * <dt>%Parameters</dt>
80 * <dd>
81 * <table class="params">
82 * <tr>
83 * <td class="paramname">path</td>
84 * <td> The directory where ns3::CommandLine should write its Usage message.</td>
85 * </tr>
86 * </table>
87 * </dd>
88 * </dl>
89 *
90 * Referenced by ns3::CommandLine::PrintDoxygenUsage.
91 */
92const char* NS_COMMANDLINE_INTROSPECTION = "path";
93
94/**
95 * \ingroup core-environ
96 * \brief Initialize a ns3::GlobalValue.
97 *
98 * Initialize the ns3::GlobalValue \pname{name} from \pname{value}.
99 *
100 * This overrides the initial value set in the corresponding
101 * ns3::GlobalValue constructor.
102 *
103 * <dl class="params">
104 * <dt>%Parameters</dt>
105 * <dd>
106 * <table class="params">
107 * <tr>
108 * <td class="paramname">name</td>
109 * <td>The name of the ns3::GlobalValue to set.</td>
110 * </tr>
111 * <tr>
112 * <td class="paramname">value</td>
113 * <td>The value to set the ns3::GlobalValue to.</td>
114 * </tr>
115 * <tr>
116 * <td class="paramname">;</td>
117 * <td>Multiple \pname{name}=\pname{value} pairs should be delimited by ';'</td>
118 * </tr>
119 * </table>
120 * </dd>
121 * </dl>
122 *
123 * Referenced by ns3::GlobalValue::InitializeFromEnv.
124 */
125const char* NS_GLOBAL_VALUE = "name=value[;...]";
126
127/**
128 * \ingroup core-environ
129 * \brief Control which logging components are enabled.
130 *
131 * Enable logging from specific \pname{component}s, with specified \pname{option}s.
132 * See the \ref logging module, or the Logging chapter
133 * in the manual for details on what symbols can be used for specifying
134 * log level and prefix options.
135 *
136 * <dl class="params">
137 * <dt>%Parameters</dt>
138 * <dd>
139 * <table class="params">
140 * <tr>
141 * <td class="paramname">component</td>
142 * <td>The logging component to enable.</td>
143 * </tr>
144 * <tr>
145 * <td class="paramname">option</td>
146 * <td>Log level and or prefix to enable. Multiple options should be delimited with '|'</td>
147 * </tr>
148 * <tr>
149 * <td class="paramname">:</td>
150 * <td>Multiple logging components can be enabled simultaneously, delimited by ':'</td>
151 * </tr>
152 * </table>
153 * </dd>
154 * </dl>
155 *
156 * Referenced by ns3::PrintList, ns3::LogComponent::EnvVarCheck and
157 * ns3::CheckEnvironmentVariables(), all in \ref log.cc.
158 */
159const char* NS_LOG = "component=option[|option...][:...]";
160
161/**
162 * \ingroup core-environ
163 * \brief Where to make temporary directories.
164 *
165 * The absolute path where ns-3 should make temporary directories.
166 *
167 * See ns3::SystemPath::MakeTemporaryDirectoryName for details on how this environment
168 * variable is used to create a temporary directory, and how that directory
169 * will be named.
170 *
171 * <dl class="params">
172 * <dt>%Parameters</dt>
173 * <dd>
174 * <table class="params">
175 * <tr>
176 * <td class="paramname">path</td>
177 * <td>The absolute path in which to create the temporary directory.</td>
178 * </tr>
179 * </table>
180 * </dd>
181 * </dl>
182 *
183 * Referenced by ns3::SystemPath::MakeTemporaryDirectoryName.
184 *
185 * @{
186 */
187const char* TMP = "path";
188const char* TEMP = "path";
189/**@}*/
const char * NS_GLOBAL_VALUE
Initialize a ns3::GlobalValue.
const char * NS_COMMANDLINE_INTROSPECTION
Write the ns3::CommandLine::Usage message, in Doxygen format, to the referenced location.
const char * NS_ATTRIBUTE_DEFAULT
Initialize an ns3::Attribute.
const char * TEMP
Where to make temporary directories.
const char * TMP
Where to make temporary directories.
const char * NS_LOG
Control which logging components are enabled.