| CAbstractContentModule | AbstractContentModule is the base class for content module implementations | 
| ►CAbstractQuery | AbstractQuery is the base class for all query classes | 
| ►CObjectQuery | ObjectQuery implements a template based object query | 
| CStringQuery | StringQuery executes queries from a string representation | 
| CActionKey | An action key is a combination of a resource, context and action that is represented as a string | 
| ►CActionKeyProvider | Implementations of ActionKeyProvider search for action keys | 
| CConfigActionKeyProvider | ConfigActionKeyProvider searches for action keys in the application configuration | 
| CPersistenceActionKeyProvider | PersistenceActionKeyProvider searches for action keys in the application storage | 
| ►CActionMapper | ActionMapper implementations are responsible for instantiating and executing Controllers based on the referring Controller and the given action | 
| CDefaultActionMapper | Default ActionMapper implementation | 
| CApplication | Application is the main application class, that does all the initialization | 
| CApplicationError | ApplicationError is used to signal errors that occur while processing a request | 
| ►CAttributeDescription | Instances of AttributeDescription describe attributes of PersistentObjects | 
| CRDBAttributeDescription | Instances of RDBAttributeDescription describe attributes of PersistentObjects in a relational database | 
| CReferenceDescription | Instances of ReferenceDescription describe reference attributes of PersistentObjects | 
| CTransientAttributeDescription | Instances of TransientAttributeDescription describe transient attributes of PersistentObjects | 
| ►CAuthenticationManager | AuthenticationManager implementations are used to handle all authentication requests | 
| CDefaultAuthenticationManager | DefaultAuthenticationManager uses PrincipalFactory to get a User instance that matches the given login/password combination | 
| CBuildDepth | BuildDepth values are used to define the depth when loading object trees | 
| ►CCache | Cache defines the interface for cache implementations | 
| CFileCache | FileCache provides simple caching functionality | 
| CNullCache | NullCache acts as no cache | 
| CClassLoader | ClassLoader tries to load missing class definitions | 
| ►CConcurrencyManager | ConcurrencyManager is used to handle concurrency for objects | 
| CDefaultConcurrencyManager | Default ConcurrencyManager implementation | 
| ►CConfiguration | Implementations of Configuration give access to the application configuration | 
| CInifileConfiguration | InifileConfiguration reads the application configuration from ini files | 
| CContentModule | Interface for smarty content modules | 
| ►CController | Controller is the base class of all controllers | 
| CAdminController | AdminController is used to perform admin tasks | 
| CAssociateController | AssociateController is used to (dis-)associates Node instances, e.g | 
| ►CBatchController | BatchController is used to process complex, longer running actions, that need to be divided into several requests to overcome resource limits and provide progress information to the user | 
| CBatchDisplayController | BatchDisplayController is used to load a tree of Node instances recursivly and return them in lists of a given size | 
| CCopyController | CopyController is used to copy or move Node instances | 
| CCSVExportController | CSVExportController exports instances of one type into a CSV file | 
| CCSVImportController | CSVImportController imports instances of one type into the storage | 
| CSearchIndexController | SearchIndexController creates a Lucene index from the complete datastore | 
| CXMLExportController | XMLExportController exports the content tree into an XML file | 
| CConcurrencyController | ConcurrencyController is used to lock/unlock objects | 
| CDeleteController | DeleteController is used to delete Node instances | 
| CDisplayController | DisplayController is used to read a Node instance | 
| CFailureController | FailureController is used to signal a failure to the user | 
| ►CListController | ListController is used to load Node lists | 
| CHistoryController | HistoryController returns a list of last changed entity instances | 
| CSearchController | SearchController executes a search and returns matching objects in a paged list | 
| CLoggingController | LoggingController is used to log a message in the backend log | 
| CLoginController | LoginController handles the login process | 
| CMediaController | MediaController integrates elFinder (https://github.com/Studio-42/elFinder) into wCMF | 
| CMessageController | MessageController is used to get all messages translated to the given language | 
| CMultipleActionController | MultipleActionController executes multiple actions by passing them to the appropriate controllers and returning all results at once | 
| CPermissionController | PermissionController checks, gets and sets permissions | 
| CRESTController | RESTController handles requests sent from a dstore/Rest client | 
| CSaveController | SaveController is a controller that saves Node data | 
| CSOAPController | SOAPController handles SOAP requests | 
| CSortController | SortController is used to change the order of nodes | 
| CTreeController | TreeController is used to visualize nodes in a tree view | 
| CUserController | UserController is used to change the current user's password | 
| CValueListController | ValueListController is used to resolve lists for input_type definitions | 
| ►CControllerMessage | Messages are sent between Controllers and are used to transfer data between them | 
| ►CAbstractControllerMessage | AbstractControllerMessage is the base class for request/response implementations | 
| CDefaultRequest | Default Request implementation | 
| CDefaultResponse | Default Response implementation | 
| ►CRequest | Request holds the request values that are used as input to Controller instances | 
| CDefaultRequest | Default Request implementation | 
| ►CResponse | Response holds the response values that are used as output from Controller instances | 
| CDefaultResponse | Default Response implementation | 
| CCreatorRole | CreatorRole matches if the user created an entity | 
| CCriteria | Criteria defines a condition on a PersistentObject's attribute used to select specific instances | 
| CDBUtil | DBUtil provides database helper functions | 
| CDefaultRequestListener | DefaultRequestListener normalizes various search, sort and paging parameters into those understood by wcmf controllers | 
| CDOMUtils | DomUtils | 
| CDynamicRole | DynamicRole is the interface for user roles based on attributes | 
| CErrorHandler | ErrorHandler catches all php errors and transforms fatal errors into ErrorExceptions and non-fatal into log messages | 
| ►CEvent | Event is the base class for all events | 
| CConfigChangeEvent | ConfigChangeEvent signals a change of the application configuration | 
| CPersistenceEvent | PersistentEvent signals create/update/delete operations on a persistent entity | 
| CPropertyChangeEvent | PropertyChangeEvent signals a change of a property of a PersistentObject instance | 
| CStateChangeEvent | StateChangeEvent signals a change of the state of a PersistentObject instance | 
| CTransactionEvent | TransactionEvent instances are fired at different phases of a transaction | 
| CValueChangeEvent | ValueChangeEvent signals a change of a value of a PersistentObject instance | 
| CApplicationEvent | ApplicationEvent instances are fired at different stages of the program flow | 
| ►CEventManager | EventManager is responsible for dispatching events to registered listeners | 
| CDefaultEventManager | DefaultEventManager is a simple EventManager implementation | 
| ►CFactory | Interface for Factory implementations | 
| CDefaultFactory | DefaultFactory is used to create service instances | 
| CFileUtil | FileUtil provides basic support for file functionality like HTTP file upload | 
| ►CFormat | Format defines the interface for all format classes | 
| ►CAbstractFormat | AbstractFormat is used as base class for specialized formats | 
| CDownloadFormat | DownloadFormat is used for downloads | 
| CGenericFormat | GenericFormat is used to output arbitrary responses | 
| ►CHierarchicalFormat | HierarchicalFormat is used as base class for formats that are able to represent hierarchical data like JSON or XML | 
| CJsonFormat | JsonFormat implements the JSON request/response format | 
| CSoapFormat | SoapFormat implements the SOAP request/response format | 
| CHtmlFormat | HtmlFormat implements the HTML request/response format | 
| CNullFormat | NullFormat transfers the original request and response objects without modifying or transforming them | 
| ►CFormatter | Formatter is the single entry point for request/response formatting | 
| CDefaultFormatter | Default Formatter implementation | 
| CI18nUtil | I18nUtil provides support i18n functionality | 
| CImageUtil | ImageUtil provides support for image handling | 
| ►CIndexStrategy | IndexStrategy defines the interface for indexing implementations | 
| CDefaultIndexStrategy | DefaultIndexStrategy implements indexing of PersistentObject values and might be customized by overriding the isIncluded and/or enhanceDocument methods | 
| CInternalLink | InternalLink contains static methods for handling internal application links | 
| ►CIterator |  | 
| CNodeIterator | NodeIterator is used to iterate over a tree/list built of Nodes using a Depth-First-Algorithm | 
| CNodeValueIterator | NodeValueIterator is used to iterate over all persistent values of a Node (not including relations) | 
| CPersistentIterator | PersistentIterator is used to iterate over a tree/list built of persistent objects using a Depth-First-Algorithm | 
| ►CJsonSerializable |  | 
| CObjectId | ObjectId is the unique identifier of an object | 
| CLinkProcessor | LinkProcessor is used to process links in Node instances | 
| CLinkProcessorStrategy | LinkProcessorStrategy defines the interface for strategies used by LinkProcessor | 
| ►CListStrategy | ListStrategy defines the interface for classes that retrieve value lists | 
| CConfigListStrategy | ConfigListStrategy implements a list of key/value pairs that is retrieved from a configuration section | 
| CFileListStrategy | FileListStrategy implements a list of key value pairs that is retrieved from an configuration section | 
| CFixedListStrategy | FixedListStrategy implements a constant list of key/value pairs | 
| CFunctionListStrategy | FunctionListStrategy implements a list of key/value pairs that is retrieved by a global function | 
| CNodeListStrategy | NodeListStrategy implements a list of entities that is retrieved from the store, where the keys are the object ids and the values are the display values | 
| ►CLocalization | Localization defines the interface for storing localized entity instances and retrieving them back | 
| CDefaultLocalization | DefaultLocalization is a Localization implementation that saves translations in the store | 
| ►CLockHandler | LockHandler defines the interface for LockHandler implementations | 
| CDefaultLockHandler | DefaultLockHandler implements the LockHandler interface for relational databases | 
| CNullLockHandler | NullLockHandler acts as if no LockHandler was installed | 
| ►CLogger | Interface for logger implementations | 
| ►CAbstractLogger | AbstractLogger is the abstract base class for Logger implementations | 
| CLog4phpLogger | Log4phpLogger is a wrapper for the log4php library | 
| CMonologFileLogger | MonologFileLogger is a wrapper for the Monolog library that logs to files | 
| CLog4phpLogger | Log4phpLogger is a wrapper for the log4php library | 
| CMonologFileLogger | MonologFileLogger is a wrapper for the Monolog library that logs to files | 
| CLogManager | LogManager is used to retrieve Logger instances | 
| ►CMessage | Message is used to get localized messages to be used in the user interface | 
| CFileMessage | FileMessage retrieves localized messages from files, that are stored in the localization directory | 
| ►CNodeSerializer | NodeSerializer implementations are used to serialize Nodes into an array representation or deserialize an array representation into Nodes | 
| ►CAbstractNodeSerializer | NodeSerializerBase is a base class for NodeSerialize implementations | 
| CDionysosNodeSerializer | DionysosNodeSerializer is used to serialize Nodes into the Dionysos format and vice versa | 
| CDojoNodeSerializer | DojoNodeSerializer is used to serialize Nodes into the Dojo rest format and vice versa | 
| CSoapNodeSerializer | SoapNodeSerializer is used to serialize Nodes into the soap format and vice versa | 
| CNodeSortkeyComparator | NodeSortkeyComparator is used to compare nodes by their sortkey in relation to a given node | 
| CNodeUtil | NodeUtil provides services for the Node class | 
| ►Cnusoap_server |  | 
| CSoapServer | SoapServer extends nusoap server to actually process requests inside the application context | 
| ►CObjectComparator | ObjectComparator is used to compare persistent objects by given criterias | 
| CNodeComparator | NodeComparator exists for compatibility reasons only | 
| CObjectFactory | ObjectFactory implements the service locator pattern by wrapping a Factory instance and providing static access to it | 
| COtherSuperUserRole | OtherSuperUserRole matches if the user has the super user attribute and the resource is a user instance with a different login than the user | 
| ►COutputStrategy | OutputStrategy defines the interface for classes that write an object's content to a destination (called 'document') using a special format | 
| CDotOutputStrategy | DotOutputStrategy outputs an object's content in a dot file | 
| ►CImageOutputStrategy | ImageOutputStrategy outputs a tree of objects into an image file | 
| CElementImageOutputStrategy | ElementImageOutputStrategy outputs a tree of objects into an image file | 
| CAuditingOutputStrategy | AuditingOutputStrategy outputs object changes to the logger category AuditingOutputStrategy, loglevel info | 
| CDefaultOutputStrategy | DefaultOutputStrategy outputs an object's content to the Log category DefaultOutputStrategy | 
| CPagingInfo | PagingInfo contains information about a paged list | 
| CPasswordService | Services for password handling | 
| CPathDescription | PathDescription describes a path between two types | 
| CPDFPage | PDFPage instances define the content of a pdf page by using a set of FPDF/FPDI commands inside the PDFPage::render method | 
| CPDFTemplate | PDFTemplate is used to output pdf files based on a given pdf template | 
| ►CPermissionManager | PermissionManager implementations are used to handle all authorization requests | 
| ►CAbstractPermissionManager | AbstractPermissionManager is the base class for concrete PermissionManager implementations | 
| CChainedPermissionManager | ChainedPermissionManager retrieves authorization rules included managers | 
| CDefaultPermissionManager | DefaultPermissionManager retrieves authorization rules the storage | 
| CStaticPermissionManager | StaticPermissionManager retrieves authorization rules from the application configuration | 
| CChainedPermissionManager | ChainedPermissionManager retrieves authorization rules included managers | 
| CDefaultPermissionManager | DefaultPermissionManager retrieves authorization rules the storage | 
| CNullPermissionManager | NullPermissionManager acts like an absent PermissionManager | 
| CStaticPermissionManager | StaticPermissionManager retrieves authorization rules from the application configuration | 
| CPersistenceAction | PersistenceAction values are used to define actions on PersistentObject instances | 
| ►CPersistenceFacade | PersistenceFacade defines the interface for PersistenceFacade implementations | 
| ►CDefaultPersistenceFacade | Default PersistenceFacade implementation | 
| CRemoteCapablePersistenceFacade | RemoteCapablePersistenceFacade delegates local persistence operations to the default PersistenceFacadeImpl and remote operations to a remote server | 
| ►CPersistenceMapper | PersistenceMapper defines the interface for all mapper classes | 
| ►CRDBMapper | RDBMapper defines the interface for mapper classes that map to relational databases | 
| ►CAbstractRDBMapper | AbstractRDBMapper maps objects of one type to a relational database schema | 
| CNodeUnifiedRDBMapper | NodeUnifiedRDBMapper maps Node objects to a relational database schema where each Node type has its own table | 
| ►CAbstractMapper | AbstractMapper provides a basic implementation for other mapper classes | 
| CAbstractRDBMapper | AbstractRDBMapper maps objects of one type to a relational database schema | 
| CNullMapper | NullMapper acts as there is no mapper | 
| ►CPersistenceOperation | A PersistenceOperation instance holds data necessary to accomplish an operation on the persistent store | 
| CDeleteOperation | DeleteOperation holds data necessary to accomplish an delete operation on the persistent store | 
| CInsertOperation | InsertOperation holds data necessary to accomplish an insert operation on the persistent store | 
| CUpdateOperation | UpdateOperation instances hold data necessary to accomplish an update operation on the persistent store | 
| CPersistentLock | PersistentLock defines the interface for locks that may be persisted (e.g | 
| ►CPersistentObject | PersistentObject defines the interface of all persistent objects | 
| ►CDefaultPersistentObject | DefaultPersistentObject is the base class of all persistent objects | 
| ►CNode | Node adds the concept of relations to PersistentObject | 
| CNullNode | NullNode is an implementation of the NullObject pattern, It inherits all functionality from Node (acts like a Node) and is only distinguishable from a Node instance by it's class or oid | 
| CAbstractRole | Default implementation of a role | 
| CAbstractUser | Default implementation of a user that is persistent | 
| CPersistentObjectProxy | PersistentObjectProxy is proxy for an PersistentObject instance | 
| ►CPHPUnit_Extensions_Database_DataSet_AbstractDataSet |  | 
| CArrayDataSet |  | 
| ►CPHPUnit_Extensions_Database_TestCase |  | 
| ►CDatabaseTestCase | DatabaseTestCase is the base class for test cases that need database support | 
| CControllerTestCase | ControllerTestCase is the base class for test cases used for Controllers | 
| CSeleniumTestCase | SeleniumTestCase is the base class for test cases that run with Selenium | 
| ►CPHPUnit_Framework_TestCase |  | 
| CBaseTestCase | BaseTestCase is the base class for all wCMF test cases | 
| CPosition | Stores a coordinate tuple for use with the LayoutVisitor | 
| ►CPrincipalFactory | PrincipalFactory implementations are used to retrieve User and Role instances | 
| CDefaultPrincipalFactory | Default implementation of PrincipalFactory | 
| ►CRelationDescription | Instances of RelationDescription describe relations between different types of PersistentObjects | 
| CRDBManyToManyRelationDescription | Instances of RDBManyToManyRelationDescription describe a many to many relation from 'this' end to 'other' end in a relational database | 
| CRDBManyToOneRelationDescription | Instances of RDBManyToOneRelationDescription describe a many to one relation from 'this' end (many) to 'other' end (one) in a relational database | 
| CRDBOneToManyRelationDescription | Instances of RDBOneToManyRelationDescription describe a one to many relation from 'this' end (one) to 'other' end (many) in a relational database | 
| ►CResponseDocument | ResponseDocument is the interface for media returned in a response when using the DownloadFormat | 
| ►CAbstractDocument | AbstractFormat is used as base class for specialized documents | 
| CFileDocument | FileDocument represents a local file | 
| CMemoryDocument | MemoryDocument represents content that resides in memory | 
| CRemoteDocument | RemoteDocument represents a remote file retrieved via cURL | 
| ►CRole | Role is the interface for user roles | 
| CAbstractRole | Default implementation of a role | 
| ►CSearch | Search implementations are used to search entity objects | 
| ►CIndexedSearch | IndexedSearch implementations are used to search entity objects in a search index | 
| CLuceneSearch | LuceneSearch provides access to the search based on ZendSearch/Lucene | 
| ►CSerializable |  | 
| CLock | Lock represents a lock on an object | 
| CDefaultPersistentObject | DefaultPersistentObject is the base class of all persistent objects | 
| CObjectId | ObjectId is the unique identifier of an object | 
| ►CSession | Session is the interface for session implementations and defines access to session variables | 
| ►CDefaultSession | DefaultSession uses the default PHP session implementation: | 
| CAuthTokenSession | AuthTokenSession is a DefaultSession, but additionally requires clients to send a token in the X-Auth-Token request header (Double Submit Cookie) | 
| ►CTokenBasedSession | A session that requires clients to send a token for authentication | 
| CAuthTokenSession | AuthTokenSession is a DefaultSession, but additionally requires clients to send a token in the X-Auth-Token request header (Double Submit Cookie) | 
| CClientSideSession | ClientSideSession has no server state as it stores the data in cookies | 
| ►CSoapClient |  | 
| CSoapClient | SoapClient is used to communicate with wCMF soap services | 
| CStringUtil | StringUtil provides support for string manipulation | 
| CSuperUserRole | SuperUserRole matches if the user has the super user attribute | 
| CTestUtil | TestUtil provides helper methods for testing wCMF functionality | 
| ►CTransaction | Transaction implements the Unit of Work pattern as it defines the interface for maintaining a list of PersistentObject changes inside a business transaction and commit/rollback them | 
| CDefaultTransaction | Default implementation of Transaction | 
| CUnionQuery | UnionQuery combines multiple query results to allow for sorting and paginating over different queries | 
| ►CUnionQueryProvider | UnionQueryProvider is used to provide queries to a union query | 
| CObjectQueryUnionQueryProvider | ObjectQueryUnionQueryProvider provides queries as ObjectQuery instances | 
| CDefaultUnionQueryProvider | DefaultUnionQueryProvider provides queries for multiple types using the PersistentFacade::loadObjects() method | 
| CURIUtil | URIUtil provides support for uri manipulation | 
| ►CUser | User is the interface for users | 
| CAbstractUser | Default implementation of a user that is persistent | 
| CAnonymousUser | Anonymous user | 
| ►CValidateType | ValidateType defines the interface for all validator classes | 
| CDate | Date validates against the specified date format | 
| CFilter | Filter validates against the given php filter | 
| CImage | Image validates an image value | 
| CRegExp | RegExp validates against the given regular expression | 
| CRequired | Required checks if the value is not empty | 
| CUnique | Unique checks if the value is unique regarding the given entity attribute | 
| CValidator | Validator is is the single entry point for validation | 
| CValueListProvider | ValueListProvider provides lists of key/values to be used with list input controls | 
| ►CView | View defines the interface for all view implementations | 
| CNullView | NullView is a stub class that implements all view methods | 
| CSmartyView | View is used by Controller to handle the view presentation in MVC pattern | 
| ►CVisitor | Visitor is used to extend an object's functionality by not extending its interface | 
| CLayoutVisitor | LayoutVisitor is used to position a tree of objects on a plane (the objects must implement the getParent()) | 
| COutputVisitor | OutputVisitor is used to output an object's content to different destinations and formats | 
| ►CWritableConfiguration | Implementations of WritableConfiguration allow to change the whole or parts of the configuration and persist the changes | 
| CInifileConfiguration | InifileConfiguration reads the application configuration from ini files | 
| ►CCaseInsensitive |  | 
| CLuceneUtf8Analyzer |  | 
| ►CException |  | 
| CConfigurationException | ConfigurationException signals an exception in the configuration | 
| CIllegalArgumentException | IllegalArgumentException signals an exception in method arguments | 
| CIOException | IOException signals an exception in i/o operations | 
| COptimisticLockException | OptimisticLockException signals an exception when trying to create an optimistic lock | 
| CPessimisticLockException | PessimisticLockException signals an exception when trying to create an pessimistic lock | 
| CPersistenceException | PersistenceException signals an exception in the persistence service | 
| CUnknownFieldException | UnknownFieldException signals an unknown field | 
| CApplicationException | ApplicationException signals a general application exception | 
| CAuthorizationException | AuthorizationException signals an exception in authorization | 
| CValidationException | ValidationException signals an exception in validation | 
| ►CExpression |  | 
| CSQLConst | Constant expression used in sql statements | 
| ►CFPDI |  | 
| CPDF | PDF extends FPDF/FPDI | 
| ►CSelect |  | 
| CSelectStatement | Select statement |