1/*
2 * Copyright (c) 2008-2015, NVIDIA CORPORATION. All rights reserved.
3 *
4 * NVIDIA CORPORATION and its licensors retain all intellectual property
5 * and proprietary rights in and to this software, related documentation
6 * and any modifications thereto. Any use, reproduction, disclosure or
7 * distribution of this software and related documentation without an express
8 * license agreement from NVIDIA CORPORATION is strictly prohibited.
9 */
10
11#ifndef PX_PROFILE_EVENT_BUFFER_CLIENT_MANAGER_H
12#define PX_PROFILE_EVENT_BUFFER_CLIENT_MANAGER_H
13
14#include "physxprofilesdk/PxProfileEventBufferClient.h"
15namespace physx {
16
17 /**
18 * Managers keep collections of clients.
19 */
20 class PxProfileEventBufferClientManager
21 {
22 protected:
23 virtual ~PxProfileEventBufferClientManager(){}
24 public:
25 virtual void addClient( PxProfileEventBufferClient& inClient ) = 0;
26 virtual void removeClient( PxProfileEventBufferClient& inClient ) = 0;
27 virtual bool hasClients() const = 0;
28 };
29
30 class PxProfileZoneClientManager
31 {
32 protected:
33 virtual ~PxProfileZoneClientManager(){}
34 public:
35 virtual void addClient( PxProfileZoneClient& inClient ) = 0;
36 virtual void removeClient( PxProfileZoneClient& inClient ) = 0;
37 virtual bool hasClients() const = 0;
38 };
39}
40
41#endif // PX_PROFILE_EVENT_BUFFER_CLIENT_MANAGER_H
42