00001 /* 00002 Copyright (c) 2001, John Lambert jlambert@jlambert.com 00003 All rights reserved. 00004 00005 Redistribution and use in source and binary forms, with or without modification, are 00006 permitted provided that the following conditions are met: 00007 00008 Redistributions of source code must retain the above copyright notice, this list of 00009 conditions and the following disclaimer. 00010 00011 Redistributions in binary form must reproduce the above copyright notice, this list 00012 of conditions and the following disclaimer in the documentation and/or other 00013 materials provided with the distribution. 00014 00015 Neither the name of the xdProf project nor the names of its contributors may be used 00016 to endorse or promote products derived from this software without specific prior 00017 written permission. 00018 00019 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY 00020 EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 00021 OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT 00022 SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 00023 SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 00024 PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR 00025 BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 00026 CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY 00027 WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 00028 */ 00029 /* 00030 $Header: /xdprof-dll/types.h 11 5/09/01 5:29a Admin $ 00031 */ 00032 00033 #ifndef _TYPES_H_ 00034 #define _TYPES_H_ 00035 00036 #if _MSC_VER > 1000 00037 #pragma once 00038 #endif // _MSC_VER > 1000 00039 00040 #include "global.h" 00041 00043 typedef JNIEnv* ThreadID; 00044 00045 class MethodInfo; 00046 class ThreadInfo; 00047 class ClassInfo; 00048 00050 typedef map<const jmethodID, const class MethodInfo*> MethodMap; 00051 00053 typedef map<const ThreadID, class ThreadInfo> ThreadMap; 00054 00056 typedef set<jmethodID> MethodSet; 00057 00058 typedef jobjectID jclassID; 00059 typedef set<jclassID> ClassSet; 00060 typedef map<jclassID, class ClassInfo> ClassInfoMap; 00061 #include <list> 00063 00064 typedef vector<jmethodID> MethodList; 00065 00066 typedef map<const jobjectID, MethodList > ClassMethopMap; 00067 00068 #endif // _TYPES_H_ 00069