public DecoratorLinear(IIdentifiable identifiable, IOutputItem decorated, IInputItem target)
     : base(identifiable, new Describable("Linear: Ax + B",
                                          "Linear transformation y = Ax + B"), decorated, target)
 {
     _arguments.Add(new Argument("A", "1.0", false, "A in y = Ax + B"));
     _arguments.Add(new Argument("B", "0.0", false, "B in y = Ax + B"));
 }
 public DecoratorBase(IIdentifiable identifiable, IDescribable descibable, IOutputItem decorated, IInputItem target)
 {
     _identifiable = identifiable;
     _describable  = descibable;
     _decorated    = decorated;
     _target       = target;
 }
 public DecoratorWave(IIdentifiable identifiable, IOutputItem decorated, IInputItem target)
     : base(identifiable, new Describable("Wave: A*sin(F*t + P)",
                                          "Wave transformation y = Amplitude * sin(frequancy * time) + phase"), decorated, target)
 {
     _arguments.Add(new Argument("Amplitude", "0.0", false, "A in A*sin(F*t + P)"));
     _arguments.Add(new Argument("Phase", "0.0", false, "P in y = A*sin(F*t + P)"));
     _arguments.Add(new Argument("Frequency", "0.0", false, "F in y = A*sin(F*t + P)"));
 }
 public void RemoveConsumer(IInputItem consumer)
 {
     _decorated.RemoveConsumer(consumer);
 }
 public void AddConsumer(IInputItem consumer)
 {
     _decorated.AddConsumer(consumer);
 }
        public IOutputItemDecorator CreateOutputItemDecorator(IIdentifiable decoratorIdentifier, IOutputItem decoratedItem, IInputItem targetItem)
        {
            if (!_ids.ContainsKey(decoratorIdentifier))
            {
                throw new NotImplementedException();
            }

            switch (_ids[decoratorIdentifier].Caption)
            {
            case "Linear":
                return(new DecoratorLinear(decoratorIdentifier, decoratedItem, targetItem));

            case "Wave":
                return(new DecoratorWave(decoratorIdentifier, decoratedItem, targetItem));

            default:
                break;
            }

            throw new NotImplementedException();
        }
 public IIdentifiable[] GetAvailableOutputDecorators(IOutputItem decoratedItem, IInputItem targetItem)
 {
     return(new List <IIdentifiable>(_ids.Keys).ToArray());
 }
Example #8
0
 public IOutputItemDecorator CreateOutputItemDecorator(IIdentifiable decoratorIdentifier, IOutputItem decoratedItem, IInputItem targetItem)
 {
     throw new NotImplementedException();
 }
Example #9
0
 public IIdentifiable[] GetAvailableOutputDecorators(IOutputItem decoratedItem, IInputItem targetItem)
 {
     throw new NotImplementedException();
 }