Design Pattern Examples
Overview of object-oriented design patterns
Facade_ComplexSystem.h File Reference

Declaration of the IDeviceNetworkLowLevel interface representing the complex system for the Facade Pattern. More...

#include <stdbool.h>
#include "helpers/uintarray.h"
Include dependency graph for Facade_ComplexSystem.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  IDeviceNetworkLowLevel
 Represents a network of device chains and the low level access to that network. In general, the caller should take a lock on a device chain before accessing it then release the lock when done. Part of the Facade Pattern example. More...
 

Macros

#define __FACADE_COMPLEXSYSTEM_H__
 

Enumerations

enum  DeviceTypes {
  DEVICECONTROLLER , CORE , GTE , PCH ,
  PMC
}
 Identifies the type of devices that can appear in a device chain. Part of the Facade Pattern example. More...
 

Functions

IDeviceNetworkLowLevelFacade_GetLowLevelDeviceService (void)
 Retrieve a set of function pointers to the low-level device service used in the Facade Pattern example.
 

Detailed Description

Declaration of the IDeviceNetworkLowLevel interface representing the complex system for the Facade Pattern.

Definition in file Facade_ComplexSystem.h.

Macro Definition Documentation

◆ __FACADE_COMPLEXSYSTEM_H__

#define __FACADE_COMPLEXSYSTEM_H__

Definition at line 8 of file Facade_ComplexSystem.h.

Enumeration Type Documentation

◆ DeviceTypes

Identifies the type of devices that can appear in a device chain. Part of the Facade Pattern example.

Enumerator
DEVICECONTROLLER 

device controller. This is always visible.

CORE 

Core device.

GTE 

GTE device.

PCH 

PCH device.

PMC 

PMC device.

Definition at line 18 of file Facade_ComplexSystem.h.

Function Documentation

◆ Facade_GetLowLevelDeviceService()

IDeviceNetworkLowLevel * Facade_GetLowLevelDeviceService ( void  )

Retrieve a set of function pointers to the low-level device service used in the Facade Pattern example.

Returns
Returns an IDeviceNetworkLowLevel interface representing the full device network.

Definition at line 368 of file Facade_ComplexSystem.c.

References lowlevelService.

Referenced by _InitializeLowLevelSystem().