# Class Factory

The Factory class is a base class which can be used to make any classes externally extensible. A filter is added for wpgmza_create_{class} which is called by createInstance. If this filter returns a subclass of Factory, that filter will override the default class and will be used.

IMPORTANT: Any objects which subclass Factory MUST be created by calling createInstance on the subclass. Calling new on the constructor directly will not cause this filter to fire, and the extended class will not be used.

#### Direct known subclasses

WPGMZA\Crud, WPGMZA\Integration\Gutenberg, WPGMZA\MarkerFilter, WPGMZA\Plugin, WPGMZA\RestAPI, WPGMZA\Table

#### Indirect known subclasses

WPGMZA\AdminMarkerDataTable, WPGMZA\AjaxTable, WPGMZA\MarkerListing\BasicList, WPGMZA\MarkerListing\BasicTable, WPGMZA\MarkerListing\Carousel, WPGMZA\MarkerListing\Modern, WPGMZA\ProAdminMarkerDataTable, WPGMZA\ProMap, WPGMZA\ProMarker, WPGMZA\ProMarkerFilter, WPGMZA\ProPlugin, WPGMZA\ProRestAPI, WPGMZA\DataTable, WPGMZA\GoogleMap, WPGMZA\Integration\ProGutenberg, WPGMZA\Map, WPGMZA\Marker, WPGMZA\MarkerDataTable, WPGMZA\MarkerListing, WPGMZA\MarkerListing\AdvancedTable
Namespace: WPGMZA
Located at class.factory.php

Methods summary
`public static` | # `createInstance( )` Creates an instance of the desired subclass, this will return the default instance if no filter is used to override the process, or will return the extended class if a filter has been bound Creates an instance of the desired subclass, this will return the default instance if no filter is used to override the process, or will return the extended class if a filter has been bound #### Throws Exception