41 lines
		
	
	
		
			987 B
		
	
	
	
		
			C
		
	
	
	
	
	
		
		
			
		
	
	
			41 lines
		
	
	
		
			987 B
		
	
	
	
		
			C
		
	
	
	
	
	
|   | /*
 | ||
|  |  * RDMA device interface | ||
|  |  * | ||
|  |  * Copyright (C) 2019 Oracle | ||
|  |  * Copyright (C) 2019 Red Hat Inc | ||
|  |  * | ||
|  |  * Authors: | ||
|  |  *     Yuval Shaia <yuval.shaia@oracle.com> | ||
|  |  * | ||
|  |  * This work is licensed under the terms of the GNU GPL, version 2 or later. | ||
|  |  * See the COPYING file in the top-level directory. | ||
|  |  * | ||
|  |  */ | ||
|  | 
 | ||
|  | #ifndef RDMA_H
 | ||
|  | #define RDMA_H
 | ||
|  | 
 | ||
|  | #include "qom/object.h"
 | ||
|  | 
 | ||
|  | #define INTERFACE_RDMA_PROVIDER "rdma"
 | ||
|  | 
 | ||
|  | #define INTERFACE_RDMA_PROVIDER_CLASS(klass) \
 | ||
|  |     OBJECT_CLASS_CHECK(RdmaProviderClass, (klass), \ | ||
|  |                        INTERFACE_RDMA_PROVIDER) | ||
|  | #define RDMA_PROVIDER_GET_CLASS(obj) \
 | ||
|  |     OBJECT_GET_CLASS(RdmaProviderClass, (obj), \ | ||
|  |                      INTERFACE_RDMA_PROVIDER) | ||
|  | #define RDMA_PROVIDER(obj) \
 | ||
|  |     INTERFACE_CHECK(RdmaProvider, (obj), \ | ||
|  |                     INTERFACE_RDMA_PROVIDER) | ||
|  | 
 | ||
|  | typedef struct RdmaProvider RdmaProvider; | ||
|  | 
 | ||
|  | typedef struct RdmaProviderClass { | ||
|  |     InterfaceClass parent; | ||
|  | 
 | ||
|  |     void (*print_statistics)(Monitor *mon, RdmaProvider *obj); | ||
|  | } RdmaProviderClass; | ||
|  | 
 | ||
|  | #endif
 |