The underlying model for a NetView
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
The underlying model for a NetView. We factor this state out of the NetView since we might have multiple displays of the same network (i.e., zoomed windows), as opposed to multiple interpretations (i.e, strip charts).
virtual ~NetModel()
void render(View*)
void render(PSView*)
void render(TestView*)
void update(double, Animation*)
virtual void render(EditView*, BBox &bb)
virtual void update(double)
void reset(double)
void handle(const TraceEvent&, double now, int direction)
virtual void BoundingBox(BBox&)
void addView(NetView*)
Animation* inside(float px, float py)
int add_monitor(Animation *a)
void delete_monitor(Monitor *m)
void delete_monitor(Animation *a)
void delete_monitor(int monnum)
void check_monitors(Animation *a)
int monitor(double now, int monitor, char *result, int len)
Packet* newPacket(PacketAttr &pkt, Edge *e, double time)
void color_subtrees()
void set_wireless()
void selectPkt(int, int, int )
int save_layout(const char *filename)
int tagCmd(View *v, int argc, char **argv, char *newTag, char *cmdName)
Animation* findClosest(float dx, float dy, double halo)
void tagObject(Tag *tag, Animation *)
int tagArea(BBox &bb, Tag *tag, int bEnclosed)
int deleteTagCmd(char *tagName, char *tagDel)
int add_tag(Tag *tag)
void delete_tag(const char *tn)
Tag* lookupTag(const char *tn)
inline double now()
virtual void moveNode(Node *n)
virtual void recalc()
void remove_view(View *v)
void add_drop(const TraceEvent &, double now, int direction)
virtual void scale_estimate()
int traverse(Node* n)
void move(double& x, double& y, double angle, double d)
virtual void placeEverything()
void placeEdgeByAngle(Edge* e, Node* src)
virtual void placeEdge(Edge* e, Node* src)
virtual void placeAgent(Agent* a, Node* src)
int addr2id(int addr)
int addAddress(int id, int addr)
Node* lookupNode(int nn)
void removeNode(Node *n)
Agent* lookupAgent(int id)
Lan* lookupLan(int nn)
Packet* lookupPacket(int src, int dst, int id)
int command(int argc, const char*const* argv)
#define EDGE_HASH_SIZE
inline int ehash(int src, int dst)
struct EdgeHashNode
EdgeHashNode* lookupEdge(int, int)
Tcl_HashTable* addrHash_
void enterEdge(Edge* e)
void removeEdge(Edge* e)
void saveState(double)
Animation* drawables_
Animation* animations_
Queue* queues_
View* views_
Node* nodes_
Lan* lans_
double now_
double wirelessNodeSize_
double nymin_
int mon_count_
Monitor* monitors_
EdgeHashNode* hashtab_[EDGE_HASH_SIZE]
int nclass_
int wireless_
int resetf_
int* paint_
int* oldpaint_
int paintMask_
char selectedTraffic_[PTYPELEN]
int selectedSrc_
int selectedDst_
int selectedFid_
char hideTraffic_[PTYPELEN]
int hideSrc_
int hideDst_
int hideFid_
char colorTraffic_[PTYPELEN]
int colorSrc_
int colorDst_
int colorFid_
int showData_
int showRouting_
int showMac_
int selectedColor_
Tcl_HashTable* grpHash_
int nGroup_
int add_group(Group *grp)
Group* lookupGroup(unsigned int addr)
Tcl_HashTable* tagHash_
int nTag_
Tcl_HashTable* objnameHash_
int registerObjName(const char*, int)
this page has been generated automatically by doc++
Adapted for the NS documentation page
(c)opyright by Malte Zöckler, Roland Wunderling
contact: doc++@zib.de