SHOGUN
v3.2.0
src
shogun
classifier
vw
cache
VwCacheWriter.cpp
浏览该文件的文档.
1
/*
2
* Copyright (c) 2009 Yahoo! Inc. All rights reserved. The copyrights
3
* embodied in the content of this file are licensed under the BSD
4
* (revised) open source license.
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 3 of the License, or
9
* (at your option) any later version.
10
*
11
* Written (W) 2011 Shashwat Lal Das
12
* Adaptation of Vowpal Wabbit v5.1.
13
* Copyright (C) 2011 Berlin Institute of Technology and Max-Planck-Society.
14
*/
15
16
#include <
shogun/classifier/vw/cache/VwCacheWriter.h
>
17
18
using namespace
shogun
;
19
20
CVwCacheWriter::CVwCacheWriter
()
21
:
CSGObject
()
22
{
23
fd
= -1;
24
env
= NULL;
25
}
26
27
CVwCacheWriter::CVwCacheWriter
(
char
* fname,
CVwEnvironment
* env_to_use)
28
:
CSGObject
()
29
{
30
fd
= open(fname, O_CREAT | O_TRUNC | O_RDWR, 0666);
31
32
if
(
fd
< 0)
33
SG_SERROR
(
"Error opening the file %s for writing cache!\n"
)
34
35
env
= env_to_use;
36
SG_REF
(
env
);
37
}
38
39
CVwCacheWriter::CVwCacheWriter
(int32_t f,
CVwEnvironment
* env_to_use)
40
:
CSGObject
()
41
{
42
fd
= f;
43
env
= env_to_use;
44
SG_REF
(
env
);
45
}
46
47
CVwCacheWriter::~CVwCacheWriter
()
48
{
49
if
(
env
)
50
SG_UNREF
(
env
);
51
}
52
53
void
CVwCacheWriter::set_file
(int32_t f)
54
{
55
fd
= f;
56
}
57
58
void
CVwCacheWriter::set_env
(
CVwEnvironment
* env_to_use)
59
{
60
env
= env_to_use;
61
SG_REF
(
env
);
62
}
63
64
CVwEnvironment
*
CVwCacheWriter::get_env
()
65
{
66
SG_REF
(
env
);
67
return
env
;
68
}
VwCacheWriter.h
shogun::CVwEnvironment
Class CVwEnvironment is the environment used by VW.
Definition:
VwEnvironment.h:39
shogun::CVwCacheWriter::get_env
virtual CVwEnvironment * get_env()
Definition:
VwCacheWriter.cpp:64
SG_UNREF
#define SG_UNREF(x)
Definition:
SGRefObject.h:35
shogun::CVwCacheWriter::set_file
virtual void set_file(int32_t f)
Definition:
VwCacheWriter.cpp:53
shogun::CVwCacheWriter::set_env
virtual void set_env(CVwEnvironment *env_to_use)
Definition:
VwCacheWriter.cpp:58
shogun::CVwCacheWriter::CVwCacheWriter
CVwCacheWriter()
Definition:
VwCacheWriter.cpp:20
shogun::CSGObject
Class SGObject is the base class of all shogun objects.
Definition:
SGObject.h:102
shogun::CVwCacheWriter::env
CVwEnvironment * env
Environment
Definition:
VwCacheWriter.h:99
SG_REF
#define SG_REF(x)
Definition:
SGRefObject.h:34
shogun::CVwCacheWriter::fd
int32_t fd
File descriptor
Definition:
VwCacheWriter.h:96
shogun::CVwCacheWriter::~CVwCacheWriter
virtual ~CVwCacheWriter()
Definition:
VwCacheWriter.cpp:47
shogun
all of classes and functions are contained in the shogun namespace
Definition:
class_list.h:16
SG_SERROR
#define SG_SERROR(...)
Definition:
SGIO.h:181
SHOGUN
Machine Learning Toolbox - Documentation