1/* procobjecttree.h 2 * 3 * Copyright (C) 2010 - 2013 UNISYS CORPORATION 4 * All rights reserved. 5 * 6 * This program is free software; you can redistribute it and/or modify 7 * it under the terms of the GNU General Public License as published by 8 * the Free Software Foundation; either version 2 of the License, or (at 9 * your option) any later version. 10 * 11 * This program is distributed in the hope that it will be useful, but 12 * WITHOUT ANY WARRANTY; without even the implied warranty of 13 * MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE, GOOD TITLE or 14 * NON INFRINGEMENT. See the GNU General Public License for more 15 * details. 16 */ 17 18/** @file ********************************************************************* 19 * 20 * This describes the interfaces necessary for creating a tree of types, 21 * objects, and properties in /proc. 22 * 23 ****************************************************************************** 24 */ 25 26#ifndef __PROCOBJECTTREE_H__ 27#define __PROCOBJECTTREE_H__ 28 29#include "timskmod.h" 30 31/* These are opaque structures to users. 32 * Fields are declared only in the implementation .c files. 33 */ 34typedef struct MYPROCOBJECT_Tag MYPROCOBJECT; 35typedef struct MYPROCTYPE_Tag MYPROCTYPE; 36 37MYPROCOBJECT *visor_proc_CreateObject(MYPROCTYPE *type, const char *name, 38 void *context); 39void visor_proc_DestroyObject(MYPROCOBJECT *obj); 40MYPROCTYPE *visor_proc_CreateType(struct proc_dir_entry *procRootDir, 41 const char **name, 42 const char **propertyNames, 43 void (*show_property)(struct seq_file *, 44 void *, int)); 45void visor_proc_DestroyType(MYPROCTYPE *type); 46 47#endif 48