00001 /*----------------------------------------------------------------------------- 00002 Copyright 2006-2010 Fusion-io, Inc. All rights 00003 reserved. 00004 00005 No part of this source code may be reproduced or transmitted in any form or 00006 by any means, electronic or mechanical, including photocopying, recording, 00007 or any information storage and retrieval system, without express written 00008 permission from Fusion-io. Further, no use of this source code is permitted 00009 in any form or means without a valid, written license agreement with 00010 Fusion-io. Please refer to the included "License" or "License.txt" file for 00011 terms and conditions regarding the use and redistribution of this 00012 software. Acceptance of the terms and conditions of the license set forth in the 00013 included "License" or "License.txt" file shall govern rights granted to use this 00014 source code. While every precaution has been taken in the preparation of this 00015 source code, Fusion-io assumes no responsibility for errors, omissions, or 00016 damages from the use of the source code contained herein. 00017 00018 NEITHER FUSION-IO, ANY MEMBER OF FUSION-IO, NOR ANY PERSON OR ORGANIZATION 00019 ACTING ON BEHALF OF THEM MAKES ANY WARRANTY OR REPRESENTATION WHATSOEVER, 00020 EXPRESS OR IMPLIED, INCLUDING ANY WARRANTY OF MERCHANTABILITY OR FITNESS 00021 OF ANY PURPOSE WITH RESPECT TO THE SOURCE CODE OR ASSUMES ANY LIABILITY 00022 WHATSOEVER WITH RESPECT TO ANY USE OF THE SOURCE CODE OR ANY PORTION 00023 THEREOF OR WITH RESPECT TO ANY DAMAGES WHICH MAY RESULT FROM SUCH USE. 00024 -----------------------------------------------------------------------------*/ 00025 00026 #ifndef _INCLUDE_FIO_PUBLIC_IODIMM_HANDLE_H_ 00027 #define _INCLUDE_FIO_PUBLIC_IODIMM_HANDLE_H_ 00028 00029 #include <fio/public/iodimm_types.h> 00030 00031 #ifdef __cplusplus 00032 extern "C" { 00033 #endif 00034 00048 DllExport 00049 uint16_t 00050 fio_enumerate_iodimms(fio_iodimm_selector_t** dimm_array, uint16_t dimm_array_size); 00051 00058 DllExport 00059 void 00060 fio_free_enumerated_iodimms(fio_iodimm_selector_t** dimm_array, uint16_t dimm_array_size); 00061 00078 DllExport 00079 fio_status_result_t 00080 first_iodimm_handle(fio_iodimm_iterator_t* iterator, fio_iodimm_selector_t* input); 00081 00097 DllExport 00098 fio_status_result_t 00099 next_iodimm_handle(fio_iodimm_iterator_t* iterator, fio_iodimm_selector_t* input); 00100 00117 DllExport 00118 fio_status_result_t 00119 open_iodimm_handle(fio_iodimm_selector_t* input); 00120 00132 DllExport 00133 fio_status_result_t 00134 close_iodimm_handle(fio_iodimm_selector_t* input); 00135 00136 #ifdef __cplusplus 00137 } 00138 #endif 00139 00140 #endif /* _INCLUDE_FIO_PUBLIC_IODIMM_HANDLE_H_ */