70 if ( p_resname==
moText(
"scene") ) {
75 p_valueindex = m_Effects.Count();
76 m_Effects.Add( peffect );
82 p_valueindex = m_PreEffects.Count();
88 p_valueindex = m_PostEffects.Count();
94 p_valueindex = m_MasterEffects.Count();
120 m_AllEffects.Add((
moEffect*) peffect);
130 switch( m_pEffect->
GetType() ) {
132 m_Effects.Add( m_pEffect );
133 m_AllEffects.Add( m_pEffect );
138 m_AllEffects.Add( m_pEffect );
143 m_AllEffects.Add( m_pEffect );
148 m_AllEffects.Add( m_pEffect );
171 peffect = m_Effects.GetRef(p_ID);
175 m_Effects.Remove(p_ID);
176 for(i=0;i<m_Effects.Count();i++) {
177 if (m_Effects[i]!=NULL) {
178 m_Effects[i]->SetConsoleValueIndex(i);
184 ppreeffect = m_PreEffects.GetRef(p_ID);
188 m_PreEffects.Remove(p_ID);
189 for(i=0;i<m_PreEffects.Count();i++) {
190 if (m_PreEffects[i]) {
191 m_PreEffects[i]->SetConsoleValueIndex(i);
197 pposteffect = m_PostEffects.GetRef(p_ID);
201 m_PostEffects.Remove(p_ID);
202 for(i=0;i<m_PostEffects.Count();i++) {
203 if (m_PostEffects[i]) {
204 m_PostEffects[i]->SetConsoleValueIndex(i);
210 pmastereffect = m_MasterEffects.GetRef(p_ID);
214 m_MasterEffects.Remove(p_ID);
215 for(i=0;i<m_MasterEffects.Count();i++)
216 if (m_MasterEffects[i]) {
217 m_MasterEffects[i]->SetConsoleValueIndex(i);
225 m_AllEffects.Remove(all_ID);
233 for(
MOuint i=0;i<m_AllEffects.Count();i++) {
234 if ( m_AllEffects.Get(i) != NULL ) {
235 if ( m_AllEffects.GetRef(i)->GetLabelName() == p_labelname) {
246 if ( m_AllEffects.Get(p_ID) != NULL ) {
247 return m_AllEffects.Get(p_ID)->GetLabelName();
260 for(
unsigned int a=0; a<m_AllEffects.Count(); a++ ) {
262 peffect = m_AllEffects.GetRef( a );
266 if ( ( label_name==p_label_name ) &&
267 ( p_mob_type==peffect->
GetType() ) ) {
270 ( label_name==p_label_name ) ) {
274 MODebug2->
Error(
"moEffectManager::GetEffectByLabel >> Effect is null.");
291 m_Effects.Set( fx_index, (
moEffect*) p_pMOB);
294 m_PreEffects.Set( fx_index, (
moPreEffect*) p_pMOB);
318 m_PreEffects.Init( 0, NULL);
319 m_Effects.Init( 0, NULL);
320 m_PostEffects.Init( 0, NULL);
321 m_MasterEffects.Init( 0, NULL);
322 m_AllEffects.Init( 0, NULL);
324 m_PrePlugins.Init( 0, NULL);
325 m_Plugins.Init( 0, NULL);
326 m_PostPlugins.Init( 0, NULL);
327 m_MasterPlugins.Init( 0, NULL);
335 m_PreEffects.Finish();
337 m_PostEffects.Finish();
338 m_MasterEffects.Finish();
339 m_AllEffects.Finish();
341 m_PrePlugins.Finish();
343 m_PostPlugins.Finish();
344 m_MasterPlugins.Finish();
366 return m_PostEffects;
369 moMasterEffectsArray&
371 return m_MasterEffects;
MOint GetParamIndex() const
moMoldeoObjectType
Tipos de objetos en Moldeo.
moEffect * New(moMobDefinition &p_MobDefinition)
Genera un nuevo efecto a partir de la definición
const moText & GetLabelName() const
moEffectManager * m_pEffectManager
void Error(moText p_text)
Anuncia y registra un error.
MOboolean AddEffect(moEffect *m_pEffect)
moEffectsArray & Effects()
LIBMOLDEO_API bool moDeleteEffect(moEffect *effect, moPluginsArray &plugins)
LIBMOLDEO_API moMasterEffect * moNewMasterEffect(moText effect_name, moMasterPluginsArray &plugins)
virtual void Set(moEffectManager *pEffectManager, moConsoleState *cstate)
moEffectsArray & AllEffects()
moMasterEffectsArray & MasterEffects()
const moText & GetName() const
Nombre del objeto.
void SetLabelName(const moText &p_labelname)
Fija la etiqueta de este objeto.
const moText & GetName() const
LIBMOLDEO_API moEffect * moNewEffect(moText effect_name, moPluginsArray &plugins)
virtual MOboolean Finish()
Finaliza el objeto, libera recursos.
moText GetEffectLabelName(MOint p_ID)
LIBMOLDEO_API bool moDeletePostEffect(moPostEffect *posteffect, moPostPluginsArray &plugins)
LIBMOLDEO_API bool moDeleteMasterEffect(moMasterEffect *mastereffect, moMasterPluginsArray &plugins)
clase base para definir Pre-Efectos.
virtual ~moEffectManager()
bool Set(int fx_index, moMoldeoObject *p_pMOB)
const moMobIndex & GetMobIndex() const
Devuelve la dupla de índices para el archivo de configuración
MOint GetEffectId(const moText &p_labelname)
LIBMOLDEO_API moPreEffect * moNewPreEffect(moText effect_name, moPrePluginsArray &plugins)
clase de para manejar textos
void SetConsoleValueIndex(MOint p_valueindex)
Clase Base Descriptiva de un Objeto Moldeo.
virtual MOboolean Init()
Inicializa el objeto.
void SetConfigName(const moText &p_configname)
Fijar el nombre del archivo de configuración
moMoldeoObjectType GetType() const
Nombre del archivo de configuración
const moMobDefinition & GetMobDefinition() const
moPostEffectsArray & PostEffects()
Clase Base para Objetos Moldeo ( moEffect, moIODevice, moResource, moConsole )
Objeto dibujable, pre-efecto ( primeros efectos en el orden de dibujado )
moResourceManager * m_pResourceManager
void SetKeyName(const moText &p_keyname)
Fija la etiqueta del padre de este objeto.
Objeto dibujable, efecto ( efectos en el orden de dibujado )
moEffect * NewEffect(const moText &p_resname, const moText &p_configname, const moText &p_labelname, const moText &p_keyname, moMoldeoObjectType p_type, MOint p_paramindex, MOint p_valueindex, bool p_activate=true)
Genera un nuevo efecto a partir de los parámetros correspondientes.
static moDebug * MODebug2
Clase de impresión de errores para depuración
LIBMOLDEO_API moPostEffect * moNewPostEffect(moText effect_name, moPostPluginsArray &plugins)
void SetConsoleParamIndex(MOint p_paramindex)
moMoldeoObjectType GetType() const
const moText & GetLabelName() const
Devuelve la etiqueta de este objeto.
moPreEffectsArray & PreEffects()
MOint GetValueIndex() const
void SetMobDefinition(const moMobDefinition &p_MobDef)
const moText & GetKeyName() const
Devuelve la etiqueta del padre de este objeto.
clase base para objetos dibujables
const moText & GetConfigName() const
Nombre del archivo de configuración
Objeto dibujable, post-efecto ( últímos efectos en el orden de dibujado )
void SetActivate(bool p_activate)
Fija el modo de activación al inicio del proyecto.
MOboolean RemoveEffect(MOint p_ID, moMoldeoObjectType p_type)
LIBMOLDEO_API bool moDeletePreEffect(moPreEffect *preeffect, moPrePluginsArray &plugins)
bool GetActivate() const
Devuelve el modo de activación al inicio del proyecto.
moEffect * GetEffectByLabel(const moText &p_label_name, moMoldeoObjectType p_mob_type=MO_OBJECT_UNDEFINED)
void SetResourceManager(moResourceManager *p_pResourceManager)