libmoldeo (Moldeo 1.0 Core)  1.0
libmoldeo es el conjunto de objetos y funciones, que permiten ejecutar las operaciones básicas de la plataforma Moldeo, y que compone su núcleo.
 Todo Clases Namespaces Archivos Funciones Variables 'typedefs' Enumeraciones Valores de enumeraciones Amigas 'defines' Grupos Páginas
moResourceManager.cpp
Ir a la documentación de este archivo.
1 /*******************************************************************************
2 
3  moResourceManager.cpp
4 
5  ****************************************************************************
6  * *
7  * This source is free software; you can redistribute it and/or modify *
8  * it under the terms of the GNU General Public License as published by *
9  * the Free Software Foundation; either version 2 of the License, or *
10  * (at your option) any later version. *
11  * *
12  * This code is distributed in the hope that it will be useful, but *
13  * WITHOUT ANY WARRANTY; without even the implied warranty of *
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
15  * General Public License for more details. *
16  * *
17  * A copy of the GNU General Public License is available on the World *
18  * Wide Web at <http://www.gnu.org/copyleft/gpl.html>. You can also *
19  * obtain it by writing to the Free Software Foundation, *
20  * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
21  * *
22  ****************************************************************************
23 
24  Copyright(C) 2006 Fabricio Costa
25 
26  Authors:
27  Fabricio Costa
28 
29 
30 *******************************************************************************/
31 #include "gst/gst.h"
32 #include "moResourceManager.h"
33 #include <moDebugManager.h>
34 #include <moNetManager.h>
35 #include <moFileManager.h>
36 #include <moFilterManager.h>
37 #include <moTimeManager.h>
38 #include <moDataManager.h>
39 #include <moMathManager.h>
40 #include <moShaderManager.h>
41 #include <moFBManager.h>
42 #include <moGLManager.h>
43 #include <moDecoderManager.h>
44 #include <moSoundManager.h>
45 #include <mo3dModelManager.h>
46 #include <moFontManager.h>
47 #include <moGUIManager.h>
48 #include <moScriptManager.h>
49 
50 #include "moArray.h"
52 
54  SetType(MO_OBJECT_RESOURCE);
55  m_ResourceType = MO_RESOURCETYPE_UNDEFINED;
56 
57 }
58 
60 
61 }
62 
63 
65 
66  if (!(GetConfigName()==moText(""))) {
67  if (moMoldeoObject::Init()) {
69  return true;
70  } else {
71  MODebug2->Error("Errors creating connectors or loading param values for " + GetConfigName() + " configuration file");
72  return false;
73  }
74  }
75  }
76 
77  MODebug2->Message("No " + GetName() + " configuration file defined. Continue.");
78 
79  return true;
80 
81 }
82 
84 
85  return true;
86 }
87 
90 
91  return m_ResourceType;
92 
93 }
94 
95 void
97 
98  m_ResourceType = p_restype;
99 
100 }
101 
102 
103 //===========================================
104 //
105 // moResourceManager
106 //
107 //===========================================
108 
109 
110 
112 
113  m_Resources.Init( 0, NULL );
114 
115  //predefined managers
116  MOFileMan = NULL;
117  MOFilterMan = NULL;
118  MONetMan = NULL;
119  MOTimeMan = NULL;
120  MODataMan = NULL;
121  MOFBMan = NULL;
122  MOGLMan = NULL;
123  MORenderMan = NULL;
124  MOShaderMan = NULL;
125  MOMathMan = NULL;
126  MOFontMan = NULL;
127  MOGuiMan = NULL;
128  MOScriptMan = NULL;
129  MOTextureMan = NULL;
130  MOSoundMan = NULL;
131  MOVideoMan = NULL;
132  MOModelMan = NULL;
133  MODebugMan = NULL;
134 }
135 
137 }
138 
139 moResource*
140 moResourceManager::NewResource( const moText& p_resname, const moText& p_configname, const moText& p_labelname, const moText& p_keyname, int paramindex, int valueindex, bool p_activate ) {
141 
142  moResource* pResource = moNewResource( p_resname, m_Plugins );
143  if (pResource) {
144 
145  moMobDefinition MDef = pResource->GetMobDefinition();
146 
147  MDef.SetConsoleParamIndex(paramindex);
148  MDef.SetConsoleValueIndex(valueindex);
149  MDef.SetConfigName( p_configname );
150  MDef.SetLabelName( p_labelname );
151  MDef.SetActivate(p_activate);
152  MDef.SetKeyName(p_keyname);
153 
154  pResource->SetMobDefinition(MDef);
155  AddResource( pResource );
156  } else {
157  MODebug2->Error("moResourceManager::NewResource Error creating resource "+p_resname);
158  }
159 
160  return pResource;
161 
162 }
163 
164 MOboolean
166 
167  if (m_pResource) {
168  m_pResource->SetResourceManager(this);
169  m_Resources.Add(m_pResource);
170  }
171 
172  return (m_pResource!=NULL && m_Resources.GetRef(m_Resources.Count()-1)==m_pResource);
173 }
174 
175 MOboolean
177 
178  moResource* pResource;
179  pResource = m_Resources.GetRef(p_ID);
181  if (pResource) {
182  if (moDeleteResource( pResource, m_Plugins )) {
186  m_Resources.Remove(p_ID);
187  return true;
188  }
189  }
190  return false;
191 }
192 
193 moResources&
195  return m_Resources;
196 }
197 
198 moResource*
200 
201  return m_Resources.GetRef(p_index);
202 
203 }
204 
205 
206 MOint
208 
209  for(MOuint i=0;i<m_Resources.Count();i++) {
210  if ( m_Resources.GetRef(i) != NULL ) {
211  if ( m_Resources.GetRef(i)->GetLabelName() == p_labelname) {
212  return i;
213  }
214  }
215  }
216  return -1;//not found
217 }
218 
219 moText
221 
222  if ( m_Resources.Get(p_index) != NULL ) {
223  return m_Resources.GetRef(p_index)->GetName();
224  }
225 
226  return moText("");//not found
227 
228 }
229 
230 moText
232 
233  if ( m_Resources.Get(p_index) != NULL ) {
234  return m_Resources.GetRef(p_index)->GetLabelName();
235  }
236 
237  return moText("");//not found
238 
239 }
240 
241 
244  if ( m_Resources.GetRef(p_index) ) {
245  return m_Resources.GetRef(p_index)->GetResourceType();
246  } else return MO_RESOURCETYPE_UNDEFINED;
247 }
248 
249 moResource*
251 {
252  for(MOuint i=0;i<m_Resources.Count();i++) {
253  if ( m_Resources.GetRef(i) ) {
254  if ( m_Resources.GetRef(i)->GetResourceType() == p_type) {
255  return m_Resources.GetRef(i);
256  }
257  }
258  }
259  return NULL;//not found
260 }
261 
262 MOboolean
264  const moText& p_apppath,
265  const moText& p_datapath,
266  moConfig& p_consoleconfig,
267  MOint p_render_to_texture_mode,
268  MOint p_screen_width,
269  MOint p_screen_height,
270  MOint p_render_width,
271  MOint p_render_height,
272  MO_HANDLE p_OpWindowHandle,
273  MO_DISPLAY p_Display) {
274 
275  if ( GetResourceByType( MO_RESOURCETYPE_DEBUG ) == NULL )
276  AddResource( new moDebugManager() );
277 
278  if ( GetResourceByType( MO_RESOURCETYPE_NET ) == NULL )
279  AddResource( new moNetManager() );
280 
281  if ( GetResourceByType( MO_RESOURCETYPE_FILE ) == NULL )
282  AddResource( new moFileManager() );
283 
284  if ( GetResourceByType( MO_RESOURCETYPE_FILTER ) == NULL )
285  AddResource( new moFilterManager() );
286 
287  if ( GetResourceByType( MO_RESOURCETYPE_TIME ) == NULL )
288  AddResource( new moTimeManager() );
289 
290  if ( GetResourceByType( MO_RESOURCETYPE_DATA ) == NULL )
291  AddResource( new moDataManager() );
292 
293  if ( GetResourceByType( MO_RESOURCETYPE_MATH ) == NULL )
294  AddResource( new moMathManager() );
295 
296  if ( GetResourceByType( MO_RESOURCETYPE_SHADER ) == NULL )
297  AddResource( new moShaderManager() );
298 
299  if ( GetResourceByType( MO_RESOURCETYPE_FB )==NULL )
300  AddResource( new moFBManager() );
301 
302  if ( GetResourceByType( MO_RESOURCETYPE_GL )==NULL )
303  AddResource( new moGLManager() );
304 
306  AddResource( new moDecoderManager() );
307 
308 
310  AddResource( new moRenderManager() );
311 
313  AddResource( new moTextureManager() );
314 
316  AddResource( new moSoundManager() );
317 
319  AddResource( new moVideoManager() );
320 
322  AddResource( new mo3dModelManager() );
323 
325  AddResource( new moFontManager() );
326 
327  if ( GetResourceByType( MO_RESOURCETYPE_GUI )==NULL )
328  AddResource( new moGUIManager() );
329 
331  AddResource( new moScriptManager() );
332 
334  moText resname;
335  moText cfname;
336  moText lblname;
337 
339  moParam& presources( p_consoleconfig.GetParam(moText("resources")) );
340 
341  presources.FirstValue();
342 
343  for(MOuint r=0; r<presources.GetValuesCount(); r++) {
344 
345  moResource* pResource = NULL;
346 
347  resname = presources[MO_SELECTED][MO_CFG_RESOURCE].Text();
348  cfname = presources[MO_SELECTED][MO_CFG_RESOURCE_CONFIG].Text();
349  lblname = presources[MO_SELECTED][MO_CFG_RESOURCE_LABEL].Text();
350 
351  MOint rid = GetResourceIndex( lblname );
352 
353  if(rid>-1) pResource = GetResource(rid);
354 
355  if (pResource) {
356  pResource->SetConfigName(cfname);
357  pResource->SetLabelName(lblname);
358  pResource->SetConsoleParamIndex( presources.GetParamDefinition().GetIndex() );
359  pResource->SetConsoleValueIndex( r );
360  }
361  presources.NextValue();
362  }
363 
364  if (MODebug2) MODebug2->Message(moText("moResourceManager::Init > Initializing Embedded Resources."));
366  if (MODebugMan) {
367  MODebugMan->Activate();
368  if (MODebug2) MODebug2->Message(moText("moResourceManager::Init > Initializing Debug Man Resource."));
369  if (!MODebugMan->Init())
370  MODebug2->Error(moText("moResourceManager:: Debug Man. Initialization Error."));
371  } else {
372  MODebug2->Error(moText("moResourceManager:: Debug Man. Creation Error."));
373  }
374 
376  if (MONetMan) {
377  MONetMan->Activate();
378  if (MODebug2) MODebug2->Message(moText("moResourceManager::Init > Initializing Net Man Resource."));
379  if (!MONetMan->Init())
380  MODebug2->Error(moText("moResourceManager:: Net Man. Initialization Error."));
381  } else {
382  MODebug2->Error(moText("moResourceManager:: Net Man. Creation Error."));
383  }
384 
386  if (MOFileMan) {
387  MOFileMan->Activate();
388  if (MODebug2) MODebug2->Message(moText("moResourceManager::Init > Initializing File Man Resource."));
389  if (!MOFileMan->Init())
390  MODebug2->Error(moText("moResourceManager:: File Man Initialization Error."));
391  } else {
392  MODebug2->Error(moText("moResourceManager:: File Man Creation Error."));
393  }
394 
395 
397  if (MODataMan) {
398  MODataMan->Activate();
399  if (MODebug2) MODebug2->Message(moText("moResourceManager::Init > Initializing Data Man Resource."));
400  if (!MODataMan->Init( p_apppath, p_datapath, p_consoleconfig.GetName()))
401  MODebug2->Error(moText("moResourceManager:: Data Man Initialization Error."));
402  } else {
403  MODebug2->Error(moText("moResourceManager:: Data Man Creation Error."));
404  }
405 
407  if (MOFilterMan) {
408  MOFilterMan->Activate();
409  if (MODebug2) MODebug2->Message(moText("moResourceManager::Init > Initializing Filter Man Resource."));
410  if (!MOFilterMan->Init())
411  MODebug2->Error(moText("moResourceManager:: Filter Man Initialization Error."));
412  } else {
413  MODebug2->Error(moText("moResourceManager:: Filter Man Creation Error."));
414  }
415 
417  if (MOTimeMan) {
418  MOTimeMan->Activate();
419  if (MODebug2) MODebug2->Message(moText("moResourceManager::Init > Initializing Time Man Resource."));
420  if (!MOTimeMan->Init())
421  MODebug2->Error(moText("moResourceManager:: Time Man Initialization Error."));
422  } else {
423  MODebug2->Error(moText("moResourceManager:: Time Man Creation Error."));
424  }
425 
427  if (MOGLMan) {
428  MOGLMan->Activate();
429  if (MODebug2) MODebug2->Message(moText("moResourceManager::Init > Initializing GL Man Resource."));
430  if (!MOGLMan->Init())
431  MODebug2->Error(moText("moResourceManager:: GL Man Initialization Error."));
432  } else {
433  MODebug2->Error(moText("moResourceManager:: GL Man Creation Error."));
434  }
435 
437  if (MOFBMan) {
438  MOFBMan->Activate();
439  if (MODebug2) MODebug2->Message(moText("moResourceManager::Init > Initializing FrameBuffer Man Resource."));
440  if (!MOFBMan->Init())
441  MODebug2->Error(moText("moResourceManager:: FrameBuffer Man Initialization Error."));
442  } else {
443  MODebug2->Error(moText("moResourceManager:: FrameBuffer Man Creation Error."));
444  }
445 
447  if (MOTextureMan) {
448  MOTextureMan->Activate();
449  if (MODebug2) MODebug2->Message(moText("moResourceManager::Init > Initializing Texture Man Resource."));
450  if (!MOTextureMan->Init())
451  MODebug2->Error(moText("moResourceManager:: Texture Man Initialization Error."));
452  } else {
453  MODebug2->Error(moText("moResourceManager:: Texture Man Creation Error."));
454  }
455 
457  if (MODecoderMan) {
458  MODecoderMan->Activate();
459  if (MODebug2) MODebug2->Message(moText("moResourceManager::Init > Initializing Decoder Manager Resource."));
460  if (!MODecoderMan->Init())
461  MODebug2->Error(moText("moResourceManager:: Decoder Manager Initialization Error."));
462  } else {
463  MODebug2->Error(moText("moResourceManager:: Decoder Manager Creation Error."));
464  }
465 
466 
474  if (MORenderMan) {
475  MORenderMan->Activate();
476  if (MODebug2) MODebug2->Message(moText("moResourceManager::Init > Initializing Render Man Resource."));
477  if (!MORenderMan->Init( (moRenderManagerMode)p_render_to_texture_mode, p_screen_width, p_screen_height, p_render_width, p_render_height ))
478  MODebug2->Error(moText("moResourceManager:: Render Man Initialization Error."));
479  } else {
480  MODebug2->Error(moText("moResourceManager:: Render Man Creation Error."));
481  }
482 
483  if (MOShaderMan) {
484  MOShaderMan->Activate();
485  if (MODebug2) MODebug2->Message(moText("moResourceManager::Init > Initializing Shader Man Resource."));
486  if (!MOShaderMan->Init())
487  MODebug2->Error(moText("moResourceManager:: Shader Man Initialization Error."));
488  } else {
489  MODebug2->Error(moText("moResourceManager:: Shader Man Creation Error."));
490  }
491 
493  if (MOMathMan) {
494  MOMathMan->Activate();
495  if (MODebug2) MODebug2->Message(moText("moResourceManager::Init > Initializing Math Man Resource."));
496  if (!MOMathMan->Init())
497  MODebug2->Error(moText("moResourceManager:: Math Man Initialization Error."));
498  } else {
499  MODebug2->Error(moText("moResourceManager:: Math Man Creation Error."));
500  }
501 
503  if (MOFontMan) {
504  MOFontMan->Activate();
505  if (MODebug2) MODebug2->Message(moText("moResourceManager::Init > Initializing Font Man Resource."));
506  if (!MOFontMan->Init())
507  MODebug2->Error(moText("moResourceManager:: Font Man Initialization Error."));
508  } else {
509  MODebug2->Error(moText("moResourceManager:: Font Man Creation Error."));
510  }
511 
513  if (MOGuiMan) {
514  MOGuiMan->Activate();
515  if (MODebug2) MODebug2->Message(moText("moResourceManager::Init > Initializing GUI Man Resource."));
516  if (!MOGuiMan->Init( p_OpWindowHandle, p_Display ))
517  MODebug2->Error(moText("moResourceManager:: GUI Man Initialization Error."));
518  } else {
519  MODebug2->Error(moText("moResourceManager:: GUI Man Creation Error."));
520  }
521 
523  if (MOSoundMan) {
524  MOSoundMan->Activate();
525  if (MODebug2) MODebug2->Message(moText("moResourceManager::Init > Initializing Sound Man Resource."));
526  if (!MOSoundMan->Init())
527  MODebug2->Error(moText("moResourceManager:: Sound Man Initialization Error."));
528  } else {
529  MODebug2->Error(moText("moResourceManager:: Sound Man Creation Error."));
530  }
531 
533  if (MOVideoMan) {
534  MOVideoMan->Activate();
535  if (MODebug2) MODebug2->Message(moText("moResourceManager::Init > Initializing Video Man Resource."));
536  if (!MOVideoMan->Init()) {
537  MODebug2->Error(moText("moResourceManager:: Video Man Initialization Error."));
538  }
539  } else {
540  MODebug2->Error(moText("moResourceManager:: Video Man Creation Error."));
541  }
542 
544  if (MOModelMan) {
545  MOModelMan->Activate();
546  if (MODebug2) MODebug2->Message(moText("moResourceManager::Init > Initializing Model Man Resource."));
547  if (!MOModelMan->Init())
548  MODebug2->Error(moText("moResourceManager:: Model Man Initialization Error."));
549  } else {
550  MODebug2->Error(moText("moResourceManager:: Model Man Creation Error."));
551  }
552 
554  if (MOScriptMan) {
555  MOScriptMan->Activate();
556  if (MODebug2) MODebug2->Message(moText("moResourceManager::Init > Initializing Script Man Resource."));
557  if (!MOScriptMan->Init()) {
558  MODebug2->Error(moText("moResourceManager:: Script Man Initialization Error."));
559  }
560  } else {
561  MODebug2->Error(moText("moResourceManager:: Script Man Creation Error."));
562  }
563 
564  m_Plugins.Init( 0, NULL);
565 
566  m_bInitialized = true;
567 
568  if (MODebug2) MODebug2->Message(moText("moResourceManager:: Embedded Resources Ready."));
569 
570  return Initialized();
571 }
572 
573 MOboolean
575 
576  for(MOuint i=0; i<m_Resources.Count(); i++) {
577  if (m_Resources[i]) {
578  m_Resources[i]->Finish();
579  }
580  }
581 
582  for(MOuint i=0; i<m_Resources.Count(); i++) {
583  if (m_Resources[i]) {
584  delete m_Resources[i];
585  }
586  }
587 
588  MOFileMan = NULL;
589  MOFilterMan = NULL;
590  MONetMan = NULL;
591  MOTimeMan = NULL;
592  MODataMan = NULL;
593  MOFBMan = NULL;
594  MOGLMan = NULL;
595  MORenderMan = NULL;
596  MOShaderMan = NULL;
597  MOMathMan = NULL;
598  MOFontMan = NULL;
599  MOGuiMan = NULL;
600  MOScriptMan = NULL;
601  MOTextureMan = NULL;
602  MOSoundMan = NULL;
603  MOVideoMan = NULL;
604  MOModelMan = NULL;
605  MODebugMan = NULL;
606  MODecoderMan = NULL;
607 
608  m_Resources.Empty();
609 
610  m_bInitialized = false;
611 
612  return true;
613 }
614 
Manejador de archivos.
moResource * GetResourceByType(moResourceType p_type)
MOboolean Initialized()
Pregunta si está inicializado.
Definition: moAbstract.cpp:153
moResource * GetResource(MOint p_index)
virtual MOboolean Init()
const moText & GetName()
Devuelve el nombre del archivo de configuración.
Definition: moConfig.h:234
void Error(moText p_text)
Anuncia y registra un error.
Definition: moAbstract.cpp:79
virtual ~moResource()
Recurso ( objeto para cargar y manipular objetos físicos de datos de imágenes, audio, video, 3d, 2d, fuentes, shaders y de cualquier otro tipo extendible por un plugin )
void SetConfigName(const moText &p_configname)
virtual MOboolean CreateConnectors()
moRenderManagerMode
moResourceType
Tipos de recursos que se pueden implementar.
#define MOboolean
Definition: moTypes.h:385
virtual void Activate()
virtual MOboolean Init()
Administrador de sonidos.
Administrador de recursos GUI.
Definition: moGUIManager.h:646
void SetResourceType(moResourceType p_restype)
LIBMOLDEO_API bool moDeleteResource(moResource *Resource, moResourcePluginsArray &plugins)
virtual MOboolean Init()
void SetLabelName(const moText &p_labelname)
Fija la etiqueta de este objeto.
const moText & GetName() const
virtual MOboolean Init()
virtual void SetConsoleValueIndex(MOint p_valueindex)
administrator de fuentes
virtual MOboolean Init()
Inicializa el objeto.
Definition: moAbstract.cpp:141
virtual MOboolean Init()
Administrador de scripts (LUA)
virtual MOboolean Init()
#define MO_CFG_RESOURCE_LABEL
clase de para manejar textos
Definition: moText.h:75
void SetConsoleValueIndex(MOint p_valueindex)
moText GetResourceLabelName(MOint p_index)
Clase Base Descriptiva de un Objeto Moldeo.
virtual MOboolean Init()
Dispositivo de entrada/salida, típicamente, interfaces humanas de IO y datos ( teclado, mouse, tableta, tcp, udp, serial )
Definition: moTypes.h:532
MOboolean RemoveResource(MOint p_index)
moTypes MOint moText moParamIndex moParamReference int iRow int int i int i
Definition: all_f.js:18
void SetConfigName(const moText &p_configname)
Fijar el nombre del archivo de configuración.
moText0 moText
Definition: moText.h:291
const moMobDefinition & GetMobDefinition() const
#define MOint
Definition: moTypes.h:388
virtual MOboolean Init()
moResource * NewResource(const moText &p_resname, const moText &p_configname, const moText &p_labelname, const moText &p_keyname, int paramindex=-1, int valueindex=-1, bool p_activate=true)
moText GetResourceName(MOint p_index)
virtual MOboolean Init()
virtual MOboolean Init()
virtual MOboolean Init()
Definition: moFBManager.cpp:54
void SetKeyName(const moText &p_keyname)
Fija la etiqueta del padre de este objeto.
void SetLabelName(const moText &p_labelname)
moResourceType GetResourceType()
Clase que implementa un administrador de shaders.
manejador de operaciones comunes de Open GL
Definition: moGLManager.h:154
static moDebug * MODebug2
Clase de impresión de errores para depuración.
Definition: moAbstract.h:225
void SetConsoleParamIndex(MOint p_paramindex)
virtual MOboolean Finish()
#define MO_CFG_RESOURCE
Clase para el manejo de los temporizadores en Moldeo.
Definition: moTimeManager.h:64
virtual MOboolean Init()
#define MO_SELECTED
Definition: moConfig.h:44
virtual MOboolean Init(moRenderManagerMode p_render_to_texture_mode, MOint p_screen_width, MOint p_screen_height, MOint p_render_width, MOint p_render_height)
virtual MOboolean Init()
Inicialización.
moParam & GetParam(MOint p_paramindex=-1)
Devuelve el parámetro por índice.
Definition: moConfig.cpp:984
virtual MOboolean Init()
const moText & GetConfigName() const
virtual MOboolean Init()
moResources & Resources()
virtual void SetConsoleParamIndex(MOint p_paramindex)
MOboolean AddResource(moResource *m_pResource)
virtual MOboolean Finish()
#define MOuint
Definition: moTypes.h:387
void SetMobDefinition(const moMobDefinition &p_MobDef)
virtual MOboolean Init()
void FirstValue()
Definition: moParam.cpp:1254
moResourceType GetResourceType(MOint p_index)
MOboolean m_bInitialized
Valor de inicialización.
Definition: moAbstract.h:223
void SetActivate(bool p_activate)
Fija el modo de activación al inicio del proyecto.
moDefineDynamicArray(moResources) moResource
LIBMOLDEO_API moResource * moNewResource(moText resource_name, moResourcePluginsArray &plugins)
MOint GetResourceIndex(moText p_labelname)
void Message(moText p_text)
Anuncia un mensaje al usuario además de guardarlo en el log de texto.
Definition: moAbstract.cpp:114
virtual MOboolean Init()
virtual MOboolean Init()
#define MO_CFG_RESOURCE_CONFIG
void SetResourceManager(moResourceManager *p_pResourceManager)
almacena la configuración de los parámetros de un objeto en un archivo XML
Definition: moConfig.h:193
virtual MOboolean Init()
MOboolean Init()