SharpLibEar/Action.cs
author StephaneLenclud
Sat, 23 Jul 2016 16:00:04 +0200
changeset 210 83dd86e73448
child 211 96f8b4dc4300
permissions -rw-r--r--
Most basic event action manager.
StephaneLenclud@210
     1
//
StephaneLenclud@210
     2
StephaneLenclud@210
     3
StephaneLenclud@210
     4
using System;
StephaneLenclud@210
     5
using System.Runtime.Serialization;
StephaneLenclud@210
     6
using System.Threading;
StephaneLenclud@210
     7
StephaneLenclud@210
     8
namespace SharpLib.Ear
StephaneLenclud@210
     9
{
StephaneLenclud@210
    10
    [DataContract]
StephaneLenclud@210
    11
    public abstract class Action: IComparable
StephaneLenclud@210
    12
    {
StephaneLenclud@210
    13
        public abstract void Execute();
StephaneLenclud@210
    14
StephaneLenclud@210
    15
        public int CompareTo(object obj)
StephaneLenclud@210
    16
        {
StephaneLenclud@210
    17
            //Sort by action name
StephaneLenclud@210
    18
            return Utils.Reflection.GetAttribute<AttributeAction>(GetType()).Name.CompareTo(obj.GetType());            
StephaneLenclud@210
    19
        }
StephaneLenclud@210
    20
    }
StephaneLenclud@210
    21
StephaneLenclud@210
    22
StephaneLenclud@210
    23
}