--- a/.hgignore Sat Aug 20 09:16:15 2011 -0400
+++ b/.hgignore Sat Aug 20 14:41:19 2011 -0400
@@ -36,3 +36,7 @@
\.diff$
\.tr$
\#[^\#/]+\#$
+windows/ns-3-debug-headers/ns3/
+\.pch
+windows/ns-3-dev/Debug/ns-3-dev.pch
+windows/ns-3-dev/Debug/
--- a/src/core/model/object-ptr-container.h Sat Aug 20 09:16:15 2011 -0400
+++ b/src/core/model/object-ptr-container.h Sat Aug 20 14:41:19 2011 -0400
@@ -1,17 +1,30 @@
-#ifndef OBJECT_VECTOR_H
-#define OBJECT_VECTOR_H
+/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
+/*
+ * Copyright (c) 2007 INRIA, Mathieu Lacage
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation;
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ *
+ * Authors: Mathieu Lacage <mathieu.lacage@gmail.com>
+ */
+#ifndef OBJECT_PTR_CONTAINER_H
+#define OBJECT_PTR_CONTAINER_H
#include <vector>
#include "object.h"
#include "ptr.h"
#include "attribute.h"
-#ifdef WIN32
-#define TYPENAME
-#else
-#define TYPENAME typename
-#endif
-
namespace ns3 {
/**
@@ -22,12 +35,12 @@
* This class it used to get attribute access to an array of
* ns3::Object pointers.
*/
-class ObjectVectorValue : public AttributeValue
+class ObjectPtrContainerValue : public AttributeValue
{
public:
typedef std::vector<Ptr<Object> >::const_iterator Iterator;
- ObjectVectorValue ();
+ ObjectPtrContainerValue ();
/**
* \returns an iterator to the first object contained in this vector
@@ -52,32 +65,29 @@
virtual bool DeserializeFromString (std::string value, Ptr<const AttributeChecker> checker);
private:
- friend class ObjectVectorAccessor;
+ friend class ObjectPtrContainerAccessor;
std::vector<Ptr<Object> > m_objects;
};
-template <typename T, typename U>
-Ptr<const AttributeAccessor>
-MakeObjectVectorAccessor (U T::*memberVector);
template <typename T, typename U, typename INDEX>
Ptr<const AttributeAccessor>
-MakeObjectVectorAccessor (Ptr<U> (T::*get)(INDEX) const,
- INDEX (T::*getN)(void) const);
+MakeObjectPtrContainerAccessor (Ptr<U> (T::*get)(INDEX) const,
+ INDEX (T::*getN)(void) const);
template <typename T, typename U, typename INDEX>
Ptr<const AttributeAccessor>
-MakeObjectVectorAccessor (INDEX (T::*getN)(void) const,
- Ptr<U> (T::*get)(INDEX) const);
+MakeObjectPtrContainerAccessor (INDEX (T::*getN)(void) const,
+ Ptr<U> (T::*get)(INDEX) const);
-class ObjectVectorChecker : public AttributeChecker
+class ObjectPtrContainerChecker : public AttributeChecker
{
public:
virtual TypeId GetItemTypeId (void) const = 0;
};
template <typename T>
-Ptr<const AttributeChecker> MakeObjectVectorChecker (void);
+Ptr<const AttributeChecker> MakeObjectPtrContainerChecker (void);
} // namespace ns3
@@ -86,17 +96,17 @@
namespace internal {
template <typename T>
-class AnObjectVectorChecker : public ObjectVectorChecker
+class AnObjectPtrContainerChecker : public ObjectPtrContainerChecker
{
public:
virtual TypeId GetItemTypeId (void) const {
return T::GetTypeId ();
}
virtual bool Check (const AttributeValue &value) const {
- return dynamic_cast<const ObjectVectorValue *> (&value) != 0;
+ return dynamic_cast<const ObjectPtrContainerValue *> (&value) != 0;
}
virtual std::string GetValueTypeName (void) const {
- return "ns3::ObjectVectorValue";
+ return "ns3::ObjectPtrContainerValue";
}
virtual bool HasUnderlyingTypeInformation (void) const {
return true;
@@ -105,11 +115,11 @@
return "ns3::Ptr< " + T::GetTypeId ().GetName () + " >";
}
virtual Ptr<AttributeValue> Create (void) const {
- return ns3::Create<ObjectVectorValue> ();
+ return ns3::Create<ObjectPtrContainerValue> ();
}
virtual bool Copy (const AttributeValue &source, AttributeValue &destination) const {
- const ObjectVectorValue *src = dynamic_cast<const ObjectVectorValue *> (&source);
- ObjectVectorValue *dst = dynamic_cast<ObjectVectorValue *> (&destination);
+ const ObjectPtrContainerValue *src = dynamic_cast<const ObjectPtrContainerValue *> (&source);
+ ObjectPtrContainerValue *dst = dynamic_cast<ObjectPtrContainerValue *> (&destination);
if (src == 0 || dst == 0)
{
return false;
@@ -122,7 +132,7 @@
} // namespace internal
-class ObjectVectorAccessor : public AttributeAccessor
+class ObjectPtrContainerAccessor : public AttributeAccessor
{
public:
virtual bool Set (ObjectBase * object, const AttributeValue &value) const;
@@ -134,50 +144,12 @@
virtual Ptr<Object> DoGet (const ObjectBase *object, uint32_t i) const = 0;
};
-template <typename T, typename U>
-Ptr<const AttributeAccessor>
-MakeObjectVectorAccessor (U T::*memberVector)
-{
- struct MemberStdContainer : public ObjectVectorAccessor
- {
- virtual bool DoGetN (const ObjectBase *object, uint32_t *n) const {
- const T *obj = dynamic_cast<const T *> (object);
- if (obj == 0)
- {
- return false;
- }
- *n = (obj->*m_memberVector).size ();
- return true;
- }
- virtual Ptr<Object> DoGet (const ObjectBase *object, uint32_t i) const {
- const T *obj = static_cast<const T *> (object);
- TYPENAME U::const_iterator begin = (obj->*m_memberVector).begin ();
- TYPENAME U::const_iterator end = (obj->*m_memberVector).end ();
- uint32_t k = 0;
- for (TYPENAME U::const_iterator j = begin; j != end; j++, k++)
- {
- if (k == i)
- {
- return *j;
- break;
- }
- }
- NS_ASSERT (false);
- // quiet compiler.
- return 0;
- }
- U T::*m_memberVector;
- } *spec = new MemberStdContainer ();
- spec->m_memberVector = memberVector;
- return Ptr<const AttributeAccessor> (spec, false);
-}
-
template <typename T, typename U, typename INDEX>
Ptr<const AttributeAccessor>
-MakeObjectVectorAccessor (Ptr<U> (T::*get)(INDEX) const,
- INDEX (T::*getN)(void) const)
+MakeObjectPtrContainerAccessor (Ptr<U> (T::*get)(INDEX) const,
+ INDEX (T::*getN)(void) const)
{
- struct MemberGetters : public ObjectVectorAccessor
+ struct MemberGetters : public ObjectPtrContainerAccessor
{
virtual bool DoGetN (const ObjectBase *object, uint32_t *n) const {
const T *obj = dynamic_cast<const T *> (object);
@@ -202,19 +174,19 @@
template <typename T, typename U, typename INDEX>
Ptr<const AttributeAccessor>
-MakeObjectVectorAccessor (INDEX (T::*getN)(void) const,
- Ptr<U> (T::*get)(INDEX) const)
+MakeObjectPtrContainerAccessor (INDEX (T::*getN)(void) const,
+ Ptr<U> (T::*get)(INDEX) const)
{
- return MakeObjectVectorAccessor (get, getN);
+ return MakeObjectPtrContainerAccessor (get, getN);
}
template <typename T>
-Ptr<const AttributeChecker> MakeObjectVectorChecker (void)
+Ptr<const AttributeChecker> MakeObjectPtrContainerChecker (void)
{
- return Create<internal::AnObjectVectorChecker<T> > ();
+ return Create<internal::AnObjectPtrContainerChecker<T> > ();
}
} // namespace ns3
-#endif /* OBJECT_VECTOR_H */
+#endif /* OBJECT_PTR_CONTAINER_H */
--- a/src/core/model/simple-ref-count.h Sat Aug 20 09:16:15 2011 -0400
+++ b/src/core/model/simple-ref-count.h Sat Aug 20 14:41:19 2011 -0400
@@ -28,6 +28,11 @@
#include <stdint.h>
#include <limits>
+#ifdef WIN32
+#undef max
+#undef min
+#endif
+
namespace ns3 {
/**
--- a/src/netanim/examples/dumbbell-animation.cc Sat Aug 20 09:16:15 2011 -0400
+++ b/src/netanim/examples/dumbbell-animation.cc Sat Aug 20 14:41:19 2011 -0400
@@ -106,9 +106,6 @@
{
anim.SetOutputFile (animFile);
}
-
- // Uncomment the below statement to generate Animation trace in XML
- // anim.SetXMLOutput ();
anim.StartAnimation ();
// Set up the acutal simulation
@@ -118,5 +115,7 @@
Simulator::Run ();
std::cout << "Destroying the simulation" << std::endl;
Simulator::Destroy ();
+ std::cout << "Stopping the animation" << std::endl;
+ anim.StopAnimation ();
return 0;
}
--- a/src/netanim/examples/grid-animation.cc Sat Aug 20 09:16:15 2011 -0400
+++ b/src/netanim/examples/grid-animation.cc Sat Aug 20 14:41:19 2011 -0400
@@ -94,8 +94,6 @@
{
anim.SetOutputFile (animFile);
}
- // Uncomment the below statement to generate Animation trace in XML
- // anim.SetXMLOutput ();
anim.StartAnimation ();
// Set up the actual simulation
--- a/src/netanim/examples/star-animation.cc Sat Aug 20 09:16:15 2011 -0400
+++ b/src/netanim/examples/star-animation.cc Sat Aug 20 14:41:19 2011 -0400
@@ -126,8 +126,6 @@
{
anim.SetOutputFile (animFile);
}
- // Uncomment the below statement to generate Animation trace in XML
- // anim.SetXMLOutput ();
anim.StartAnimation ();
NS_LOG_INFO ("Run Simulation.");
--- a/src/netanim/helper/animation-interface-helper.cc Sat Aug 20 09:16:15 2011 -0400
+++ b/src/netanim/helper/animation-interface-helper.cc Sat Aug 20 14:41:19 2011 -0400
@@ -27,58 +27,62 @@
namespace ns3 {
AnimPacketInfo::AnimPacketInfo()
- : m_txnd (0), m_fbTx (0), m_lbTx (0),
- m_txLoc (Vector (0,0,0))
+ : m_txnd (0), m_nRx (0), m_nRxEnd (0), m_fbTx (0), m_lbTx (0),
+ transmitter_loc (Vector (0,0,0))
{
}
-AnimPacketInfo::AnimPacketInfo(Ptr <const NetDevice> txnd, const Time& fbTx,
+AnimPacketInfo::AnimPacketInfo(Ptr<const NetDevice> nd, const Time& fbTx,
const Time& lbTx, Vector txLoc)
- : m_txnd (txnd), m_fbTx (fbTx.GetSeconds ()), m_lbTx (lbTx.GetSeconds ()),
- m_txLoc (txLoc)
+ : m_txnd (nd), m_nRx (0), m_nRxEnd (0),
+ m_fbTx (fbTx.GetSeconds ()), m_lbTx (lbTx.GetSeconds ()), transmitter_loc (txLoc),
+ reception_range (0)
{
}
-void AnimPacketInfo::ProcessRxBegin (Ptr<const NetDevice> nd, const Time& fbRx)
+void AnimPacketInfo::ProcessRxBegin (Ptr<const NetDevice> nd, const Time& fbRx,
+ Vector rxLoc)
{
- m_rx[nd->GetNode ()->GetId ()] = AnimRxInfo (fbRx, nd, 0);
+ m_rx[nd->GetNode ()->GetId ()] = AnimRxInfo (fbRx,nd);
+ m_nRx++;
+ reception_range = std::max (reception_range,CalculateDistance (transmitter_loc,rxLoc));
}
-bool AnimPacketInfo::ProcessRxEnd (Ptr<const NetDevice> nd, const Time& lbRx, Vector rxLoc)
+bool AnimPacketInfo::ProcessRxEnd (Ptr<const NetDevice> nd, const Time& lbRx)
+
{
uint32_t NodeId = nd->GetNode ()->GetId ();
// Find the RxInfo
- if (m_rx.find (NodeId) == m_rx.end ())
- {
- return false;
- }
- AnimRxInfo& rxInfo = m_rx[NodeId];
- // Check if the NetDevice matches. A node may have several NetDevices
- if (rxInfo.m_rxnd != nd)
- {
- return false;
+ if (m_rx.find(NodeId) != m_rx.end ())
+ {
+ // Check if the NetDevice matches. A node may have several NetDevices
+ if (m_rx[NodeId].m_rxnd != nd)
+ {
+ return false;
+ }
+ m_rx[NodeId].m_lbRx = lbRx.GetSeconds ();
+ firstlastbitDelta = m_rx[NodeId].m_lbRx - m_rx[NodeId].m_fbRx;
+ m_nRxEnd++;
+ if (m_nRxEnd == m_nRx)
+ {
+ return true;
+ }
+ return false; // Still more RxEnd notifications expected
}
- rxInfo.rxRange = CalculateDistance (m_txLoc, rxLoc);
- rxInfo.m_lbRx = lbRx.GetSeconds ();
- firstlastbitDelta = rxInfo.m_lbRx - rxInfo.m_fbRx;
- return true;
-}
-
-AnimRxInfo AnimPacketInfo::GetRxInfo (Ptr<const NetDevice> nd)
-{
- uint32_t NodeId = nd->GetNode ()->GetId ();
- NS_ASSERT (m_rx.find (NodeId) != m_rx.end ());
- return m_rx[NodeId];
-}
-
-void AnimPacketInfo::RemoveRxInfo (Ptr<const NetDevice> nd)
-{
- uint32_t NodeId = nd->GetNode ()->GetId ();
- m_rx.erase (m_rx.find (NodeId));
+ NS_ASSERT ("Received RxEnd notification but RxInfo never existed");
+ return false; // Still more rxEnd expected
}
void AnimPacketInfo::ProcessRxDrop (Ptr<const NetDevice> nd)
{
+ if (m_rx.find (nd->GetNode ()->GetId ()) == m_rx.end())
+ {
+ NS_LOG_DEBUG ("Received RxDrop notification");
+ return;
+ }
+ // Remove any entry for which an RxBegin notification was received
+ m_rx.erase (m_rx.find (nd->GetNode ()->GetId ()));
+ m_nRx--;
}
--- a/src/netanim/helper/animation-interface-helper.h Sat Aug 20 09:16:15 2011 -0400
+++ b/src/netanim/helper/animation-interface-helper.h Sat Aug 20 14:41:19 2011 -0400
@@ -56,43 +56,27 @@
/**
* \brief Constructor
- * \param fbRx First-bit Receive time
- * \param nd NetDevice where packet was received
- * \param rxRange Reception range
+ * \param First-bit Receive time
+ * \param Ptr to NetDevice used for reception
*
*/
- AnimRxInfo (const Time& fbRx, Ptr <const NetDevice> nd ,double rxRange)
- : m_fbRx (fbRx.GetSeconds ()), m_lbRx (0), m_rxnd (nd),
- rxRange (rxRange) {}
+ AnimRxInfo (const Time& fbRx, Ptr <const NetDevice> nd)
+ : m_fbRx (fbRx.GetSeconds ()), m_lbRx (0), m_rxnd (nd) {}
- /**
- * \brief First bit receive time
- * \param m_fbRx First bit receive time
- *
+ /*
+ * First bit receive time
*/
double m_fbRx;
- /**
- * \brief Last bit receive time
- * \param m_lbRx Last bit receive time
- *
+ /*
+ * Last bit receive time
*/
double m_lbRx;
- /**
- * \brief Ptr to receiving NetDevice
- * \param m_rxnd Ptr to receiving NetDevice
- *
+ /*
+ * Ptr to receiving Net Device
*/
Ptr <const NetDevice> m_rxnd;
-
- /**
- * \brief Reception range
- * \param rxRange Reception range
- *
- */
- double rxRange;
-
};
/**
@@ -117,99 +101,88 @@
/**
* \brief Default constructor
- *
*/
AnimPacketInfo ();
/**
* \brief Constructor
- * \param tx_nd Ptr to NetDevice that is transmitting
- * \param fbTx First bit transmit time
- * \param lbTx Last bit transmit time
- * \param txLoc Transmitter Location
+ * \param Ptr to NetDevice transmitted on
+ * \param First bit transmit time
+ * \param Last bit transmit time
+ * \param Transmitter Location
*
*/
- AnimPacketInfo(Ptr <const NetDevice> tx_nd, const Time& fbTx, const Time& lbTx,Vector txLoc);
-
+ AnimPacketInfo(Ptr<const NetDevice> nd,
+ const Time& fbTx, const Time& lbTx,Vector txLoc);
+
/**
- * \brief Ptr to NetDevice that is transmitting
- * \param m_txnd NetDevice that is transmitting
- *
- */
- Ptr <const NetDevice> m_txnd;
+ * Ptr to NetDevice used for transmission
+ */
+ Ptr<const NetDevice> m_txnd;
+
+ /**
+ * Number of receivers
+ */
+ uint32_t m_nRx;
/**
- * \brief First bit transmission time
- * \param m_fbTx First bit transmission time
- *
+ * Number of RxEnd trace callbacks
+ */
+ uint32_t m_nRxEnd;
+
+ /**
+ * First bit transmission time
*/
double m_fbTx;
/**
- * \brief Last bit transmission time
- * \param m_lbTx Last bit transmission time
- *
+ * Last bit transmission time
*/
double m_lbTx;
/**
- * \brief Transmitter's location
- * \param m_txLoc Transmitter's Location
- *
+ * Transmitter's location
*/
- Vector m_txLoc;
+ Vector transmitter_loc;
+ /**
+ * Receptiion range
+ */
+ double reception_range;
/**
- * \brief Collection of receivers
- * \param m_rx Collection of receivers
- *
+ * Collection of receivers
*/
std::map<uint32_t,AnimRxInfo> m_rx;
/**
* \brief Process RxBegin notifications
- * \param nd Ptr to NetDevice where packet was received
- * \param fbRx First bit receive time
+ * \param Ptr to NetDevice where packet was received
+ * \param First bit receive time
+ * \param Location of the transmitter
*
*/
- void ProcessRxBegin (Ptr <const NetDevice> nd, const Time& fbRx);
+ void ProcessRxBegin (Ptr <const NetDevice> nd, const Time& fbRx,
+ Vector rxLoc);
/**
* \brief Process RxEnd notifications
- * \param nd Ptr to NetDevice where packet was received
- * \param fbRx First bit receive time
- * \param rxLoc Location of receiver
- * \returns true if RxEnd notification was expected and processed
+ * \param Ptr to NetDevice where packet was received
+ * \param First bit receive time
*
*/
- bool ProcessRxEnd (Ptr <const NetDevice> nd, const Time& fbRx, Vector rxLoc);
+ bool ProcessRxEnd (Ptr <const NetDevice> nd, const Time& fbRx);
/**
* \brief Process RxDrop notifications
- * \param nd Ptr to NetDevice where packet was dropped on reception
+ * \param Ptr to NetDevice where packet was dropped on reception
*
*/
void ProcessRxDrop (Ptr <const NetDevice> nd);
-
- /**
- * \brief GetRxInfo
- * \param nd Ptr to NetDevice where packet was received
- * \returns AnimRxInfo object
- *
- */
- AnimRxInfo GetRxInfo (Ptr <const NetDevice> nd);
-
- /**
- * \brief RemoveRxInfo
- * \param nd Ptr to NetDevice where packet was received
- *
- */
- void RemoveRxInfo (Ptr <const NetDevice> nd);
/**
* \brief Time delta between First bit Rx and Last bit Rx
- * \param firstlastbitDelta Time delta between First bit Rx and Last bit Rx
+ *
*/
double firstlastbitDelta;
--- a/src/netanim/model/animation-interface.h Sat Aug 20 09:16:15 2011 -0400
+++ b/src/netanim/model/animation-interface.h Sat Aug 20 14:41:19 2011 -0400
@@ -34,6 +34,10 @@
#include "ns3/animation-interface-helper.h"
#include "ns3/mac48-address.h"
+#ifdef WIN32
+#include "winsock2.h"
+#endif
+
namespace ns3 {
class NetModel;
@@ -187,7 +191,7 @@
typedef std::map <uint32_t,AnimRxInfo>::iterator RxInfoIterator;
-#ifdef WIN32
+#ifndef WIN32
// Write specified amount of data to the specified handle
int WriteN (int, const char*, uint32_t);
#else
--- a/src/netanim/model/canvas-location.cc Sat Aug 20 09:16:15 2011 -0400
+++ b/src/netanim/model/canvas-location.cc Sat Aug 20 14:41:19 2011 -0400
@@ -1,4 +1,4 @@
-/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
+/* -*- Mode: C++; c-file-style: "gnu"; indent-tabs-mode:nil; -*- */
/*
* Copyright (c) 2009 Georgia Institute of Technology
*
--- a/src/netanim/model/canvas-location.h Sat Aug 20 09:16:15 2011 -0400
+++ b/src/netanim/model/canvas-location.h Sat Aug 20 14:41:19 2011 -0400
@@ -1,4 +1,4 @@
-/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
+/* -*- Mode: C++; c-file-style: "gnu"; indent-tabs-mode:nil; -*- */
/*
* Copyright (c) 2009 Georgia Institute of Technology
*
@@ -59,6 +59,6 @@
Vector m_location;
};
-} // namespace ns3
+}; // namespace ns3
#endif /* CANVAS_LOCATION_H */
--- a/src/netanim/wscript Sat Aug 20 09:16:15 2011 -0400
+++ b/src/netanim/wscript Sat Aug 20 14:41:19 2011 -0400
@@ -23,5 +23,4 @@
def configure (conf) :
conf.check (header_name='sys/socket.h', define_name='HAVE_SYS_SOCKET_H')
conf.check (header_name='netinet/in.h', define_name='HAVE_NETINET_IN_H')
- conf.write_config_header ('ns3/netanim-config.h', top=True)
--- a/windows/ns-3-dev-src/ns-3-dev-src.vcxproj Sat Aug 20 09:16:15 2011 -0400
+++ b/windows/ns-3-dev-src/ns-3-dev-src.vcxproj Sat Aug 20 14:41:19 2011 -0400
@@ -14,8 +14,8 @@
<ClInclude Include="..\..\src\core\model\abort.h" />
<ClInclude Include="..\..\src\core\model\assert.h" />
<ClInclude Include="..\..\src\core\model\attribute-accessor-helper.h" />
+ <ClInclude Include="..\..\src\core\model\attribute-construction-list.h" />
<ClInclude Include="..\..\src\core\model\attribute-helper.h" />
- <ClInclude Include="..\..\src\core\model\attribute-list.h" />
<ClInclude Include="..\..\src\core\model\attribute.h" />
<ClInclude Include="..\..\src\core\model\boolean.h" />
<ClInclude Include="..\..\src\core\model\breakpoint.h" />
@@ -51,6 +51,7 @@
<ClInclude Include="..\..\src\core\model\nstime.h" />
<ClInclude Include="..\..\src\core\model\object-base.h" />
<ClInclude Include="..\..\src\core\model\object-factory.h" />
+ <ClInclude Include="..\..\src\core\model\object-ptr-container.h" />
<ClInclude Include="..\..\src\core\model\object-vector.h" />
<ClInclude Include="..\..\src\core\model\object.h" />
<ClInclude Include="..\..\src\core\model\pointer.h" />
@@ -69,6 +70,7 @@
<ClInclude Include="..\..\src\core\model\synchronizer.h" />
<ClInclude Include="..\..\src\core\model\system-condition.h" />
<ClInclude Include="..\..\src\core\model\system-mutex.h" />
+ <ClInclude Include="..\..\src\core\model\system-path.h" />
<ClInclude Include="..\..\src\core\model\system-thread.h" />
<ClInclude Include="..\..\src\core\model\system-wall-clock-ms.h" />
<ClInclude Include="..\..\src\core\model\test.h" />
@@ -87,7 +89,7 @@
<ClInclude Include="..\..\src\core\model\watchdog.h" />
</ItemGroup>
<ItemGroup>
- <ClCompile Include="..\..\src\core\model\attribute-list.cc" />
+ <ClCompile Include="..\..\src\core\model\attribute-construction-list.cc" />
<ClCompile Include="..\..\src\core\model\attribute.cc" />
<ClCompile Include="..\..\src\core\model\boolean.cc" />
<ClCompile Include="..\..\src\core\model\breakpoint.cc" />
@@ -113,7 +115,7 @@
<ClCompile Include="..\..\src\core\model\ns2-calendar-scheduler.cc" />
<ClCompile Include="..\..\src\core\model\object-base.cc" />
<ClCompile Include="..\..\src\core\model\object-factory.cc" />
- <ClCompile Include="..\..\src\core\model\object-vector.cc" />
+ <ClCompile Include="..\..\src\core\model\object-ptr-container.cc" />
<ClCompile Include="..\..\src\core\model\object.cc" />
<ClCompile Include="..\..\src\core\model\pointer.cc" />
<ClCompile Include="..\..\src\core\model\random-variable.cc" />
@@ -124,7 +126,6 @@
<ClCompile Include="..\..\src\core\model\simulator.cc" />
<ClCompile Include="..\..\src\core\model\string.cc" />
<ClCompile Include="..\..\src\core\model\synchronizer.cc" />
- <ClCompile Include="..\..\src\core\model\test.cc" />
<ClCompile Include="..\..\src\core\model\time.cc" />
<ClCompile Include="..\..\src\core\model\timer.cc" />
<ClCompile Include="..\..\src\core\model\trace-source-accessor.cc" />
--- a/windows/ns-3-dev-src/ns-3-dev-src.vcxproj.filters Sat Aug 20 09:16:15 2011 -0400
+++ b/windows/ns-3-dev-src/ns-3-dev-src.vcxproj.filters Sat Aug 20 14:41:19 2011 -0400
@@ -18,9 +18,6 @@
<ClInclude Include="..\..\src\core\model\attribute-helper.h">
<Filter>model</Filter>
</ClInclude>
- <ClInclude Include="..\..\src\core\model\attribute-list.h">
- <Filter>model</Filter>
- </ClInclude>
<ClInclude Include="..\..\src\core\model\boolean.h">
<Filter>model</Filter>
</ClInclude>
@@ -228,14 +225,20 @@
<ClInclude Include="..\..\src\core\model\abort.h">
<Filter>model</Filter>
</ClInclude>
+ <ClInclude Include="..\..\src\core\model\object-ptr-container.h">
+ <Filter>model</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\core\model\attribute-construction-list.h">
+ <Filter>model</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\core\model\system-path.h">
+ <Filter>model</Filter>
+ </ClInclude>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\..\src\core\model\attribute.cc">
<Filter>model</Filter>
</ClCompile>
- <ClCompile Include="..\..\src\core\model\attribute-list.cc">
- <Filter>model</Filter>
- </ClCompile>
<ClCompile Include="..\..\src\core\model\boolean.cc">
<Filter>model</Filter>
</ClCompile>
@@ -311,9 +314,6 @@
<ClCompile Include="..\..\src\core\model\object-factory.cc">
<Filter>model</Filter>
</ClCompile>
- <ClCompile Include="..\..\src\core\model\object-vector.cc">
- <Filter>model</Filter>
- </ClCompile>
<ClCompile Include="..\..\src\core\model\pointer.cc">
<Filter>model</Filter>
</ClCompile>
@@ -341,9 +341,6 @@
<ClCompile Include="..\..\src\core\model\synchronizer.cc">
<Filter>model</Filter>
</ClCompile>
- <ClCompile Include="..\..\src\core\model\test.cc">
- <Filter>model</Filter>
- </ClCompile>
<ClCompile Include="..\..\src\core\model\time.cc">
<Filter>model</Filter>
</ClCompile>
@@ -371,5 +368,11 @@
<ClCompile Include="..\..\src\core\model\win32-system-wall-clock-ms.cc">
<Filter>model</Filter>
</ClCompile>
+ <ClCompile Include="..\..\src\core\model\object-ptr-container.cc">
+ <Filter>model</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\core\model\attribute-construction-list.cc">
+ <Filter>model</Filter>
+ </ClCompile>
</ItemGroup>
</Project>
\ No newline at end of file
Binary file windows/ns-3-dev.suo has changed
--- a/windows/winport/module-headers/core-module.h Sat Aug 20 09:16:15 2011 -0400
+++ b/windows/winport/module-headers/core-module.h Sat Aug 20 14:41:19 2011 -0400
@@ -11,7 +11,6 @@
#include "assert.h"
#include "attribute-accessor-helper.h"
#include "attribute-helper.h"
-#include "attribute-list.h"
#include "attribute.h"
#include "boolean.h"
#include "breakpoint.h"