public void ApplyFilters()
        {
            filterHandler += filters.ApplyBrightness;
            filterHandler += filters.ApplyContrast;

            processor.Process(PATH, filterHandler);
        }
Ejemplo n.º 2
0
        static void Main(string[] args)
        {
            var photo = new Photo();
            var photofilters = new PhotoFilters();
            var photoprocessor = new PhotoProcessor();

            PhotoProcessor.PhotoFilterHandler filterHandler = photofilters.ApplyBrightness;

            filterHandler += photofilters.ApplyContrast;

            filterHandler += RemoveRedEye;  // even our custome method is added without redeploying anythang

            photoprocessor.Process("path",filterHandler);

            Console.WriteLine();

            // inbuilt delegate -> Action
            Console.WriteLine("Action The Custom one -> ");

            Action<Photo> customDelegate = photofilters.ApplyBrightness;
            customDelegate += photofilters.ApplyContrast;
            customDelegate += RemoveRedEye;

            photoprocessor.Process2("path",customDelegate);

        }
Ejemplo n.º 3
0
        public void Program()
        {
            PhotoProcessor.PhotoFilterHandler filterHandler = filters.ApplyBrightness;
            filterHandler += filters.ApplyContrast;
            filterHandler += filters.ApplyResize;

            processor.Process("Photo", filterHandler);
        }
Ejemplo n.º 4
0
        static void Main(string[] args)
        {
            var processor = new PhotoProcessor();
            var filters   = new PhotoFilters();

            PhotoProcessor.PhotoFilterHandler filterHandler = filters.ApplyBrightness;
            processor.Process("Image.jpg", filterHandler);
        }
        public void Setup()
        {
            this.filterHandler = null;

            this.filters   = new PhotoFilters {
            };
            this.processor = new PhotoProcessor {
            };
        }
        public void ApplyClientFilters()
        {
            ClientPhotoFilterHandler handler = new ClientPhotoFilterHandler {
            };

            filterHandler += filters.ApplyContrast;
            filterHandler += handler.RemoveRedEyeFilter;

            processor.Process(PATH, filterHandler);
        }
Ejemplo n.º 7
0
        static void Main(string[] args)
        {
            PhotoProcessor processor = new PhotoProcessor();
            PhotoFilters   filters   = new PhotoFilters();

            PhotoProcessor.PhotoFilterHandler filterHandler = filters.ApplyBrightness;
            filterHandler += filters.ApplyContrast;
            filterHandler += RemoveRedEyeFilter;
            processor.Process("photo.jpg", filterHandler);
        }
Ejemplo n.º 8
0
        static void Main(string[] args)
        {
            var processor = new PhotoProcess();
            var filters   = new PhotoFilters();

            PhotoProcessor.PhotoFilterHandler filterHanlder = filters.ApplyBrightness;
            filterHanlder += filters.ApplyContrast;
            filterHanlder += RemoveRedEyeFilter;
            processor.Process(@"C:\First.jpeg", filterHanlder);
            Console.ReadLine();
        }
Ejemplo n.º 9
0
        static void Main(string[] args)
        {
            var processor = new PhotoProcessor();
            var filters   = new PhotoFilters();

            PhotoProcessor.PhotoFilterHandler filterHandler = filters.ApplyBrighness;
            filterHandler += filters.ApplyContrast;
            filterHandler += filters.Resize;
            filterHandler += RedEyeRemover;
            processor.Process("Photo.jpg", filterHandler);
        }
Ejemplo n.º 10
0
        static void Main(string[] args)
        {
            var filters = new PhotoFilters();

            PhotoProcessor.PhotoFilterHandler filterHandler = filters.ApplyBrightness;
            filterHandler += filters.ApplyContrast;

            PhotoProcessor processor = new PhotoProcessor();

            processor.Process(new Photo(), filterHandler);
        }
Ejemplo n.º 11
0
        static void Main(string[] args)
        {
            var process = new PhotoProcessor();
            var filter  = new PhotoFilters();

            PhotoProcessor.PhotoFilterHandler filterHandler = filter.ApplyBrigthness;
            filterHandler += filter.Resize;
            // adding my own one
            filterHandler += RemoveRedEye;

            process.Process(@"path", filterHandler);
        }
Ejemplo n.º 12
0
        public static void ExampleWithOriginalDelegate()
        {
            var processor = new PhotoProcessor();

            var filters = new PhotoFilters();

            PhotoProcessor.PhotoFilterHandler filterHandler = filters.ApplyBrightness;
            filterHandler += filters.ApplyContrast;
            filterHandler += filters.Resize;
            filterHandler += RemoveRedEyeFilter; // exemplo de extensão

            processor.Process("photo.jpg", filterHandler);
        }
Ejemplo n.º 13
0
        static void Main(string[] args)
        {
            var processor = new PhotoProcessor();
            var filters   = new PhotoFilters();

            PhotoProcessor.PhotoFilterHandler filterHandler = filters.ApplyBrightness;
            filterHandler += RemoveRedEyeFilter;
            filterHandler += filters.ApplyContrast;
            // Using filterHandler (delegate)
            processor.Processing("photo.jpg", filterHandler);

            // Using Action<Photo>
            processor.Process("image.jpg", filters.ApplyBrightness);
        }
Ejemplo n.º 14
0
        //Delegate in an object that know how to call a method or multiple method
        //a pointer to a function - that provies flexibility and Extensability
        static void Main(string[] args)
        {
            var processor = new PhotoProcessor();
            var filter    = new PhotoFilters();

            PhotoProcessor.PhotoFilterHandler filterHandler = filter.ApplyBrightness;
            filterHandler += filter.ApplyContrast;
            filterHandler += RemoveRedEyeFilter;
            processor.Process("photo.jpg", filterHandler);

            //Buildin delegates:
            //System.Action // for a method that not returns a value;
            //System.Func // for a method that returns value
        }
Ejemplo n.º 15
0
        static void Main(string[] args)
        {
            var photoProcessor = new PhotoProcessor();
            var filters        = new PhotoFilters();
            var transform      = new Transformations();

            PhotoProcessor.PhotoFilterHandler filterHandler = filters.ApplyBrightness;
            filterHandler += filters.ApplyContrast;
            filterHandler += filters.Resize;
            filterHandler += transform.Crop;

            photoProcessor.Process(filterHandler);

            Console.ReadLine();
        }
Ejemplo n.º 16
0
        //public string[] Filter { get; set; }
        public void Delegates()
        {
            var processor = new PhotoProcessor();
            var filters   = new PhotoFilters();
            var p         = new Photo();

            //p.PhotoMessage = "Applying Filters";
            //p.PhotoMessage += _NewLine;
            TextAreaBody = "Adding Filters to filterHandler Delegate \n";
            PhotoProcessor.PhotoFilterHandler filterHandler = filters.AppllyBrightness;
            filterHandler += filters.ApplyContrast;
            filterHandler += RemoveRedEyeFilter;
            TextAreaBody  += p.PhotoMessage;
            TextAreaBody  += "Running Photo Processor to process filters \n";
            TextAreaBody   = processor.Process("photo.jpg", filterHandler, TextAreaBody);
        }
Ejemplo n.º 17
0
        private void Delegates()
        {
            /*
             * DELEGATES :
             * is object that know how to call a method (or group of method)
             * is refrence to a function (or pointer to a function)
             */
            var photoProcessor = new PhotoProcessor();
            var filter         = new FilterHandler();

            PhotoProcessor.PhotoFilterHandler delegatedFilter = filter.ApplyContrast;
            delegatedFilter += filter.ApplyBrightness;
            delegatedFilter += filter.Resize;

            photoProcessor.Process("images.jpg", delegatedFilter);
        }
Ejemplo n.º 18
0
        static void Main(string[] args)
        {
            var processor = new PhotoProcessor();
            var filters   = new PhotoFilters();

            PhotoProcessor.PhotoFilterHandler filterHandler = filters.ApplyBrightness;
            filterHandler += filters.ApplyContrast;
            filterHandler += filters.Resize;
            filterHandler += ApplySaturation;

            processor.Process("urlphoto", filterHandler);

            //the same but using default delegates
            Action <Photo> filterHandler2 = filters.ApplyContrast;

            processor.Process("urlphoto", filterHandler2);

            Console.ReadLine();
        }
Ejemplo n.º 19
0
        public void Execute()
        {
            /*
             * An object that knows how to call a method (or a group of methods)
             * A reference to a function
             * For designing extensible and flexible applications
             */
            var processor = new PhotoProcessor();
            var filters   = new PhotoFilters();

            PhotoProcessor.PhotoFilterHandler filterHandler = filters.ApplyBrightness;
            filterHandler += filters.Resize;
            filterHandler += FilterOutsidePhotoFilter;
            processor.Process("C:\\Photos\\phot.jpg", filterHandler);

            Action <Photo> actionFilterHanlder = filters.ApplyContrast;

            processor.ProcessGenericDelegate("picture.jpg", actionFilterHanlder);
        }
Ejemplo n.º 20
0
        public void Call()
        {
            //Without delegates (hence not extensible if we want to apply our own filter as we'll need to change PhotoProcessor class)
            var photoProcessor = new PhotoProcessor();
            photoProcessor.Process("photo.jpg");

            //With custom delegates
            var filters = new PhotoFilters();
            PhotoProcessor.PhotoFilterHandler filterHandler = filters.ApplyBrightness; //Creating an instance of delegate and pointing it to a method having same signature
            filterHandler += filters.ApplyContrast; //As our delegate here is pointing to multiple functions, so this is a multicaste delegate
            filterHandler += RemoveRedEyeFilter;           
            photoProcessor.Process("photo.jpg", filterHandler);

            //With .NET delegates
            Action<Photo> actionFilterHandler = filters.ApplyBrightness;
            actionFilterHandler += filters.ApplyContrast;
            photoProcessor.Process("photo.jpg", actionFilterHandler);
            Action<Photo> action = new Action<Photo>(filters.ApplyBrightness); //Can also call in this way
            action(new Photo());

            UsingInterfaces();
        }
Ejemplo n.º 21
0
        static void Main(string[] args)
        {
            //-using processor delegate
            var processor = new PhotoProcessor();
            var filters   = new PhotoFilters();

            PhotoProcessor.PhotoFilterHandler filterHandler = filters.ApplyBrightness;
            filterHandler += filters.ApplyContrast;
            filterHandler += RemoveRedEyeFilter;

            processor.Process("photo.jpg", filterHandler);

            Console.WriteLine("------------------------------------");

            //-using generic processor delegate
            var            gProcessor     = new GenericPhotoProcessor();
            Action <Photo> gFilterHandler = filters.ApplyBrightness;

            gFilterHandler += filters.ApplyContrast;
            gFilterHandler += RemoveRedEyeFilter;

            processor.Process("photo.jpg", filterHandler);
        }