MySQL 5.6.14 Source Code Document
Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
table_esgs_by_user_by_event_name.h
Go to the documentation of this file.
1
/* Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
2
3
This program is free software; you can redistribute it and/or modify
4
it under the terms of the GNU General Public License as published by
5
the Free Software Foundation; version 2 of the License.
6
7
This program is distributed in the hope that it will be useful,
8
but WITHOUT ANY WARRANTY; without even the implied warranty of
9
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10
GNU General Public License for more details.
11
12
You should have received a copy of the GNU General Public License
13
along with this program; if not, write to the Free Software
14
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
15
16
#ifndef TABLE_ESGS_BY_USER_BY_EVENT_NAME_H
17
#define TABLE_ESGS_BY_USER_BY_EVENT_NAME_H
18
24
#include "
pfs_column_types.h
"
25
#include "
pfs_engine_table.h
"
26
#include "
pfs_instr_class.h
"
27
#include "
pfs_instr.h
"
28
#include "
pfs_user.h
"
29
#include "
table_helper.h
"
30
40
struct
row_esgs_by_user_by_event_name
41
{
43
PFS_user_row
m_user
;
45
PFS_event_name_row
m_event_name
;
47
PFS_stage_stat_row
m_stat
;
48
};
49
56
struct
pos_esgs_by_user_by_event_name
57
:
public
PFS_double_index
58
{
59
pos_esgs_by_user_by_event_name
()
60
:
PFS_double_index
(0, 1)
61
{}
62
63
inline
void
reset(
void
)
64
{
65
m_index_1
= 0;
66
m_index_2
= 1;
67
}
68
69
inline
bool
has_more_user(
void
)
70
{
return
(
m_index_1
< user_max); }
71
72
inline
void
next_user(
void
)
73
{
74
m_index_1
++;
75
m_index_2
= 1;
76
}
77
78
inline
void
next_stage(
void
)
79
{
80
m_index_2
++;
81
}
82
};
83
85
class
table_esgs_by_user_by_event_name
:
public
PFS_engine_table
86
{
87
public
:
89
static
PFS_engine_table_share
m_share
;
90
static
PFS_engine_table
* create();
91
static
int
delete_all_rows();
92
93
virtual
int
rnd_init
(
bool
scan);
94
virtual
int
rnd_next
();
95
virtual
int
rnd_pos
(
const
void
*pos);
96
virtual
void
reset_position
(
void
);
97
98
protected
:
99
virtual
int
read_row_values
(
TABLE
*
table
,
100
unsigned
char
*
buf
,
101
Field
**fields,
102
bool
read_all);
103
104
table_esgs_by_user_by_event_name
();
105
106
public
:
107
~
table_esgs_by_user_by_event_name
()
108
{}
109
110
protected
:
111
void
make_row(
PFS_user
*user,
PFS_stage_class
*klass);
112
113
private
:
115
static
THR_LOCK
m_table_lock;
117
static
TABLE_FIELD_DEF
m_field_def;
118
120
row_esgs_by_user_by_event_name
m_row;
122
bool
m_row_exists;
124
pos_esgs_by_user_by_event_name
m_pos;
126
pos_esgs_by_user_by_event_name
m_next_pos;
127
};
128
130
#endif
storage
perfschema
table_esgs_by_user_by_event_name.h
Generated on Sat Nov 9 2013 01:28:40 for MySQL 5.6.14 Source Code Document by
1.8.1.2