MAK RTIspy API Documentation for HLA 1.3
iconAndTextureManager.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2012 MaK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 
6 #ifndef nodeIconManager_H_
7 #define nodeIconManager_H_
8 
9 #include <vlutil/vlFilename.h>
10 #include <QtGui/QPixmap>
11 #include <QtGui/QIcon>
12 #include <QtCore/QDir>
13 #include <map>
14 #include <GL/glut.h>
15 #include "nodeIconXmlReader.h"
16 
17 
20 {
31 };
32 
35 {
46 };
47 
50 {
51 public:
54 
56  void initialize();
57 
59  GLuint getNodeTexture( const MAKRti::DtString& processName,
60  const MAKRti::DtString& federateType, const MAKRti::DtString& federateName );
61 
63  QPixmap getNodePixmap( const MAKRti::DtString& processName,
64  const MAKRti::DtString& federateType, const MAKRti::DtString& federateName );
65 
67  GLuint getTexture( DtStandardTextureId id );
68 
70  QPixmap getPixmap( DtStandardIconId id );
71 
73  QPixmap getPixmap( const MAKRti::DtFilename& filename );
74 
76  QIcon getIcon( DtStandardIconId id );
77 
79  QIcon getIcon( const MAKRti::DtFilename& filename );
80 
82  void setNodeImageFile( const MAKRti::DtString& id,
83  DtFederateIdentifierType associationType,
84  const MAKRti::DtFilename& imageFile );
85 
86 protected:
87 
89  void loadStandardIcons();
90 
92  void loadNodeIcons();
93 
95  void loadStandardTextures();
96 
98  void loadNodeTextures();
99 
101  void loadStandardIcon(const MAKRti::DtFilename& filename, DtStandardIconId id);
102 
104  void loadStandardTexture(const MAKRti::DtFilename& filename, DtStandardTextureId id);
105 
107  void loadIcon( const MAKRti::DtFilename& filename, QPixmap** pm, QIcon** icon );
108 
110  GLuint* loadTexture( const MAKRti::DtFilename& filename );
111 
113  const MAKRti::DtString& getNodeFilename( const MAKRti::DtString& processName,
114  const MAKRti::DtString& federateType, const MAKRti::DtString& federateName ) const;
115 
117  void saveToFile();
118 
119 private:
120 
123 
126 
129 
131  virtual ~DtIconAndTextureManager();
132 
133 protected:
134 
137 
140 
142  std::vector< GLuint* > myStandardTextures;
143 
145  std::vector< QPixmap* > myStandardPixmaps;
146 
148  std::vector< QIcon* > myStandardIcons;
149 
151  std::vector< DtNodeIconFile > myUserIconFiles;
152 
154  typedef std::map< MAKRti::DtString, GLuint* > DtFilenameTextureMap;
156 
158  typedef std::map< MAKRti::DtString, QPixmap* > DtFilenamePixmapMap;
160 
162  typedef std::map< MAKRti::DtString, QIcon* > DtFilenameIconMap;
164 
166 
167  typedef std::map< MAKRti::DtString, MAKRti::DtString > DtNodeIdFilenameMap;
172 
174  std::list< MAKRti::DtFilename > myImageDirs;
175 
176 public:
178 
179  static const MAKRti::DtFilename theImagesDir;
180  static const MAKRti::DtFilename theMakIconsDir;
182 
184  static const MAKRti::DtFilename theIconXmlFile;
185 
187 
188  static const MAKRti::DtFilename theStdWarnFile;
189  static const MAKRti::DtFilename theStdErrorFile;
190  static const MAKRti::DtFilename theStdDisconnectedFile;
191  static const MAKRti::DtFilename theStdNotJoinedFile;
192  static const MAKRti::DtFilename theStdBloomFile;
193  static const MAKRti::DtFilename theStdDefaultFederateFile;
194  static const MAKRti::DtFilename theStdForwarderFile;
195  static const MAKRti::DtFilename theStdRtiexecFile;
196  static const MAKRti::DtFilename theStdLightweightFile;
198 };
199 
200 #endif
201 

Document ID: Generated on Fri Mar 14 19:08:55 EDT 2014 from SVN revision 137085
Copyright © 2005-2014 VT MÄK Inc. All Rights Reserved (www.mak.com)