OLD | NEW |
1 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */ | 1 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */ |
2 /* | 2 /* |
3 * Copyright (c) 2007 INRIA | 3 * Copyright (c) 2007 INRIA |
4 * | 4 * |
5 * This program is free software; you can redistribute it and/or modify | 5 * This program is free software; you can redistribute it and/or modify |
6 * it under the terms of the GNU General Public License version 2 as | 6 * it under the terms of the GNU General Public License version 2 as |
7 * published by the Free Software Foundation; | 7 * published by the Free Software Foundation; |
8 * | 8 * |
9 * This program is distributed in the hope that it will be useful, | 9 * This program is distributed in the hope that it will be useful, |
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of | 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
(...skipping 180 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
191 | 191 |
192 /** | 192 /** |
193 * Subtraction operator. | 193 * Subtraction operator. |
194 * \param [in] a lhs vector. | 194 * \param [in] a lhs vector. |
195 * \param [in] b rhs vector. | 195 * \param [in] b rhs vector. |
196 * \returns The vector differend of \p a less \p b. | 196 * \returns The vector differend of \p a less \p b. |
197 */ | 197 */ |
198 friend Vector2D operator - (const Vector2D &a, const Vector2D &b); | 198 friend Vector2D operator - (const Vector2D &a, const Vector2D &b); |
199 }; | 199 }; |
200 | 200 |
| 201 /** |
| 202 * \param [in] a One point |
| 203 * \param [in] b Another point |
| 204 * \returns The cartesian distance between a and b. |
| 205 */ |
201 double CalculateDistance (const Vector3D &a, const Vector3D &b); | 206 double CalculateDistance (const Vector3D &a, const Vector3D &b); |
| 207 /** |
| 208 * \param [in] a One point |
| 209 * \param [in] b Another point |
| 210 * \returns The cartesian distance between a and b. |
| 211 */ |
202 double CalculateDistance (const Vector2D &a, const Vector2D &b); | 212 double CalculateDistance (const Vector2D &a, const Vector2D &b); |
| 213 /** |
| 214 * Output streamer. |
| 215 * |
| 216 * Vectors are written as "x:y:z". |
| 217 * |
| 218 * \param [in,out] os The stream. |
| 219 * \param [in] vector The vector to stream |
| 220 * \return The stream. |
| 221 */ |
203 std::ostream &operator << (std::ostream &os, const Vector3D &vector); | 222 std::ostream &operator << (std::ostream &os, const Vector3D &vector); |
| 223 /** |
| 224 * Output streamer. |
| 225 * |
| 226 * Vectors are written as "x:y". |
| 227 * |
| 228 * \param [in,out] os The stream. |
| 229 * \param [in] vector The vector to stream |
| 230 * \return The stream. |
| 231 */ |
204 std::ostream &operator << (std::ostream &os, const Vector2D &vector); | 232 std::ostream &operator << (std::ostream &os, const Vector2D &vector); |
| 233 /** |
| 234 * Input streamer. |
| 235 * |
| 236 * Vectors are expected to be in the form "x:y:z". |
| 237 * |
| 238 * \param [in,out] is The stream. |
| 239 * \param [in] vector The vector. |
| 240 * \returns The stream. |
| 241 */ |
205 std::istream &operator >> (std::istream &is, Vector3D &vector); | 242 std::istream &operator >> (std::istream &is, Vector3D &vector); |
| 243 /** |
| 244 * Input streamer. |
| 245 * |
| 246 * Vectors are expected to be in the form "x:y". |
| 247 * |
| 248 * \param [in,out] is The stream. |
| 249 * \param [in] vector The vector. |
| 250 * \returns The stream. |
| 251 */ |
206 std::istream &operator >> (std::istream &is, Vector2D &vector); | 252 std::istream &operator >> (std::istream &is, Vector2D &vector); |
207 bool operator < (const Vector3D &a, const Vector3D &b);· | 253 bool operator < (const Vector3D &a, const Vector3D &b);· |
208 bool operator < (const Vector2D &a, const Vector2D &b); | 254 bool operator < (const Vector2D &a, const Vector2D &b); |
209 ·· | 255 ·· |
210 ATTRIBUTE_HELPER_HEADER (Vector3D); | 256 ATTRIBUTE_HELPER_HEADER (Vector3D); |
211 ATTRIBUTE_HELPER_HEADER (Vector2D); | 257 ATTRIBUTE_HELPER_HEADER (Vector2D); |
212 | 258 |
213 /** | 259 /** |
214 * \relates Vector3D | 260 * \relates Vector3D |
215 * Vector alias typedef for compatibility with mobility models | 261 * Vector alias typedef for compatibility with mobility models |
(...skipping 29 matching lines...) Expand all Loading... |
245 */ | 291 */ |
246 | 292 |
247 ATTRIBUTE_ACCESSOR_DEFINE (Vector); | 293 ATTRIBUTE_ACCESSOR_DEFINE (Vector); |
248 | 294 |
249 /** | 295 /** |
250 * \relates Vector3D | 296 * \relates Vector3D |
251 * \returns The AttributeChecker. | 297 * \returns The AttributeChecker. |
252 * \see AttributeChecker | 298 * \see AttributeChecker |
253 */ | 299 */ |
254 Ptr<const AttributeChecker> MakeVectorChecker (void); | 300 Ptr<const AttributeChecker> MakeVectorChecker (void); |
255 | 301 |
256 ·· | |
257 } // namespace ns3 | 302 } // namespace ns3 |
258 | 303 |
259 #endif /* NS3_VECTOR_H */ | 304 #endif /* NS3_VECTOR_H */ |
OLD | NEW |