SHOGUN
3.2.1
首页
相关页面
模块
类
文件
文件列表
文件成员
全部
类
命名空间
文件
函数
变量
类型定义
枚举
枚举值
友元
宏定义
组
页
src
shogun
labels
StructuredLabels.h
浏览该文件的文档.
1
/*
2
* This program is free software; you can redistribute it and/or modify
3
* it under the terms of the GNU General Public License as published by
4
* the Free Software Foundation; either version 3 of the License, or
5
* (at your option) any later version.
6
*
7
* Written (W) 2012 Fernando José Iglesias García
8
* Copyright (C) 2012 Fernando José Iglesias García
9
*/
10
11
#ifndef _STRUCTURED_LABELS__H__
12
#define _STRUCTURED_LABELS__H__
13
14
#include <
shogun/labels/Labels.h
>
15
#include <
shogun/labels/LabelTypes.h
>
16
#include <
shogun/lib/DynamicObjectArray.h
>
17
#include <
shogun/lib/StructuredData.h
>
18
#include <
shogun/lib/StructuredDataTypes.h
>
19
20
namespace
shogun {
21
23
class
CStructuredLabels
:
public
CLabels
24
{
25
26
public
:
28
CStructuredLabels
();
29
38
CStructuredLabels
(int32_t num_labels);
39
41
virtual
~CStructuredLabels
();
42
49
virtual
void
ensure_valid
(
const
char
* context = NULL);
50
59
virtual
void
add_label
(
CStructuredData
* label);
60
67
CDynamicObjectArray
*
get_labels
()
const
;
68
75
virtual
CStructuredData
*
get_label
(int32_t idx);
76
87
virtual
bool
set_label
(int32_t idx,
CStructuredData
* label);
88
93
virtual
int32_t
get_num_labels
()
const
;
94
96
virtual
const
char
*
get_name
()
const
{
return
"StructuredLabels"
; }
97
102
virtual
ELabelType
get_label_type
()
const
{
return
LT_STRUCTURED
; }
103
108
inline
EStructuredDataType
get_structured_data_type
() {
return
m_sdt
; }
109
110
private
:
112
void
init();
113
115
void
ensure_valid_sdt(
CStructuredData
* label);
116
117
protected
:
119
CDynamicObjectArray
*
m_labels
;
120
122
EStructuredDataType
m_sdt
;
123
124
};
/* class CStructuredLabels */
125
126
}
/* namespace shogun */
127
128
#endif
/* _STRUCTUREDLABELS_H__ */
SHOGUN
机器学习工具包 - 项目文档