Design Pattern Examples
Overview of object-oriented design patterns
c/Facade_Exercise.h File Reference

Declaration of the Facade_Exercise() function as used in the Facade Pattern. More...

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define __FACADE_EXERCISE_H__
 

Functions

void Facade_Exercise (void)
 Example of using the Facade Pattern.
 

Detailed Description

Declaration of the Facade_Exercise() function as used in the Facade Pattern.

Definition in file c/Facade_Exercise.h.

Macro Definition Documentation

◆ __FACADE_EXERCISE_H__

#define __FACADE_EXERCISE_H__

Definition at line 9 of file c/Facade_Exercise.h.

Function Documentation

◆ Facade_Exercise()

void Facade_Exercise ( void  )

Example of using the Facade Pattern.

The Facade pattern is used when a simplified version of an interface on a complicated sub-system is needed in situations where the whole complicated sub-system does not need to be exposed.

In this example, the complicated subsystem is a representation of a device network complete with scan chains, device idcodes, and device devices that can be selected and deselected. The Facade exposed by this complex network exposes only the scan chain, getting device idcodes based on an index into those scan chains, resetting the scan chains and selecting a device to appear in the scan chain.

Definition at line 58 of file Facade_Exercise.c.

References _Facade_ShowIdCodes(), IDeviceNetworkHighLevel::DisableDevicesInDeviceChain, IDeviceNetworkHighLevel::EnableDevicesInDeviceChain, Facade_GetHighLevelDeviceService(), IDeviceNetworkHighLevel::GetIdcodes, IDeviceNetworkHighLevel::NumChains, UIntArray_Clear(), and UIntArray_Initialize().