File Storage Node class.
More...
#include <opencv2/core/persistence.hpp>
|
enum | {
NONE = 0
,
INT = 1
,
REAL = 2
,
FLOAT = REAL
,
STR = 3
,
STRING = STR
,
SEQ = 4
,
MAP = 5
,
TYPE_MASK = 7
,
FLOW = 8
,
UNIFORM = 8
,
EMPTY = 16
,
NAMED = 32
} |
| type of the file storage node More...
|
|
|
| FileNode () |
| The constructors.
|
|
| FileNode (const FileNode &node) |
|
| FileNode (const FileStorage *fs, size_t blockIdx, size_t ofs) |
|
| FileNode (FileStorage::Impl *fs, size_t blockIdx, size_t ofs) |
|
FileNodeIterator | begin () const |
| returns iterator pointing to the first node element
|
|
bool | empty () const |
| returns true if the node is empty
|
|
FileNodeIterator | end () const |
| returns iterator pointing to the element following the last node element
|
|
bool | isInt () const |
| returns true if the node is an integer
|
|
bool | isMap () const |
| returns true if the node is a mapping
|
|
bool | isNamed () const |
| returns true if the node has a name
|
|
bool | isNone () const |
| returns true if the node is a "none" object
|
|
bool | isReal () const |
| returns true if the node is a floating-point number
|
|
bool | isSeq () const |
| returns true if the node is a sequence
|
|
bool | isString () const |
| returns true if the node is a text string
|
|
std::vector< String > | keys () const |
| Returns keys of a mapping node.
|
|
Mat | mat () const |
| Simplified reading API to use with bindings.
|
|
std::string | name () const |
| returns the node name or an empty string if the node is nameless
|
|
| operator double () const |
| returns the node content as double
|
|
| operator float () const |
| returns the node content as float
|
|
| operator int64_t () const |
| returns the node content as a signed 64bit integer. If the node stores floating-point number, it is rounded.
|
|
| operator std::string () const |
| returns the node content as text string
|
|
FileNode & | operator= (const FileNode &node) |
|
FileNode | operator[] (const char *nodename) const |
|
FileNode | operator[] (const String &nodename) const |
| Returns element of a mapping node or a sequence node.
|
|
FileNode | operator[] (int i) const |
|
uchar * | ptr () |
|
const uchar * | ptr () const |
|
size_t | rawSize () const |
| returns raw size of the FileNode in bytes
|
|
void | readRaw (const String &fmt, void *vec, size_t len) const |
| Reads node elements to the buffer with the specified format.
|
|
double | real () const |
| Simplified reading API to use with bindings.
|
|
void | setValue (int type, const void *value, int len=-1) |
|
size_t | size () const |
| returns the number of elements in the node, if it is a sequence or mapping, or 1 otherwise.
|
|
std::string | string () const |
| Simplified reading API to use with bindings.
|
|
int | type () const |
| Returns type of the node.
|
|
File Storage Node class.
The node is used to store each and every element of the file storage opened for reading. When XML/YAML file is read, it is first parsed and stored in the memory as a hierarchical collection of nodes. Each node can be a "leaf" that is contain a single number or a string, or be a collection of other nodes. There can be named collections (mappings) where each element has a name and it is accessed by a name, and ordered collections (sequences) where elements do not have names but rather accessed by index. Type of the file node can be determined using FileNode::type method.
Note that file nodes are only used for navigating file storages opened for reading. When a file storage is opened for writing, no data is stored in memory after it is written.
- Examples
- samples/cpp/tutorial_code/core/file_input_output/file_input_output.cpp, and samples/dnn/classification.cpp.
◆ anonymous enum
type of the file storage node
Enumerator |
---|
NONE | empty node
|
INT | an integer
|
REAL | floating-point number
|
FLOAT | synonym or REAL
|
STR | text string in UTF-8 encoding
|
STRING | synonym for STR
|
SEQ | sequence
|
MAP | mapping
|
TYPE_MASK | |
FLOW | compact representation of a sequence or mapping. Used only by YAML writer
|
UNIFORM | UNIFORM is used only when reading FileStorage; FLOW is used only when writing. So they share the same bit.
if set, means that all the collection elements are numbers of the same type (real's or int's).
|
EMPTY | empty structure (sequence or mapping)
|
NAMED | the node has a name (i.e. it is element of a mapping).
|
◆ FileNode() [1/4]
cv::FileNode::FileNode |
( |
| ) |
|
Python: |
---|
| cv.FileNode( | | ) -> | <FileNode object> |
The constructors.
These constructors are used to create a default file node, construct it from obsolete structures or from the another file node.
◆ FileNode() [2/4]
cv::FileNode::FileNode |
( |
const FileStorage * |
fs, |
|
|
size_t |
blockIdx, |
|
|
size_t |
ofs |
|
) |
| |
Python: |
---|
| cv.FileNode( | | ) -> | <FileNode object> |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
- Parameters
-
fs | Pointer to the file storage structure. |
blockIdx | Index of the memory block where the file node is stored |
ofs | Offset in bytes from the beginning of the serialized storage |
- Deprecated:
◆ FileNode() [3/4]
cv::FileNode::FileNode |
( |
const FileNode & |
node | ) |
|
Python: |
---|
| cv.FileNode( | | ) -> | <FileNode object> |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
- Parameters
-
node | File node to be used as initialization for the created file node. |
◆ FileNode() [4/4]
cv::FileNode::FileNode |
( |
FileStorage::Impl * |
fs, |
|
|
size_t |
blockIdx, |
|
|
size_t |
ofs |
|
) |
| |
Python: |
---|
| cv.FileNode( | | ) -> | <FileNode object> |
◆ begin()
◆ empty()
bool cv::FileNode::empty |
( |
| ) |
const |
Python: |
---|
| cv.FileNode.empty( | | ) -> | retval |
◆ end()
◆ isCollection()
static bool cv::FileNode::isCollection |
( |
int |
flags | ) |
|
|
static |
◆ isEmptyCollection()
static bool cv::FileNode::isEmptyCollection |
( |
int |
flags | ) |
|
|
static |
◆ isFlow()
static bool cv::FileNode::isFlow |
( |
int |
flags | ) |
|
|
static |
◆ isInt()
bool cv::FileNode::isInt |
( |
| ) |
const |
Python: |
---|
| cv.FileNode.isInt( | | ) -> | retval |
returns true if the node is an integer
◆ isMap() [1/2]
bool cv::FileNode::isMap |
( |
| ) |
const |
Python: |
---|
| cv.FileNode.isMap( | | ) -> | retval |
returns true if the node is a mapping
◆ isMap() [2/2]
static bool cv::FileNode::isMap |
( |
int |
flags | ) |
|
|
static |
Python: |
---|
| cv.FileNode.isMap( | | ) -> | retval |
◆ isNamed()
bool cv::FileNode::isNamed |
( |
| ) |
const |
Python: |
---|
| cv.FileNode.isNamed( | | ) -> | retval |
returns true if the node has a name
◆ isNone()
bool cv::FileNode::isNone |
( |
| ) |
const |
Python: |
---|
| cv.FileNode.isNone( | | ) -> | retval |
returns true if the node is a "none" object
◆ isReal()
bool cv::FileNode::isReal |
( |
| ) |
const |
Python: |
---|
| cv.FileNode.isReal( | | ) -> | retval |
returns true if the node is a floating-point number
◆ isSeq() [1/2]
bool cv::FileNode::isSeq |
( |
| ) |
const |
Python: |
---|
| cv.FileNode.isSeq( | | ) -> | retval |
returns true if the node is a sequence
◆ isSeq() [2/2]
static bool cv::FileNode::isSeq |
( |
int |
flags | ) |
|
|
static |
Python: |
---|
| cv.FileNode.isSeq( | | ) -> | retval |
◆ isString()
bool cv::FileNode::isString |
( |
| ) |
const |
Python: |
---|
| cv.FileNode.isString( | | ) -> | retval |
returns true if the node is a text string
◆ keys()
std::vector< String > cv::FileNode::keys |
( |
| ) |
const |
Python: |
---|
| cv.FileNode.keys( | | ) -> | retval |
Returns keys of a mapping node.
- Returns
- Keys of a mapping node.
◆ mat()
Mat cv::FileNode::mat |
( |
| ) |
const |
Python: |
---|
| cv.FileNode.mat( | | ) -> | retval |
Simplified reading API to use with bindings.
◆ name()
std::string cv::FileNode::name |
( |
| ) |
const |
Python: |
---|
| cv.FileNode.name( | | ) -> | retval |
returns the node name or an empty string if the node is nameless
◆ operator double()
cv::FileNode::operator double |
( |
| ) |
const |
returns the node content as double
◆ operator float()
cv::FileNode::operator float |
( |
| ) |
const |
returns the node content as float
◆ operator int64_t()
cv::FileNode::operator int64_t |
( |
| ) |
const |
returns the node content as a signed 64bit integer. If the node stores floating-point number, it is rounded.
◆ operator std::string()
cv::FileNode::operator std::string |
( |
| ) |
const |
|
inline |
returns the node content as text string
◆ operator=()
◆ operator[]() [1/3]
FileNode cv::FileNode::operator[] |
( |
const char * |
nodename | ) |
const |
Python: |
---|
| cv.FileNode.at( | i | ) -> | retval |
| cv.FileNode.getNode( | nodename | ) -> | retval |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
- Parameters
-
nodename | Name of an element in the mapping node. |
◆ operator[]() [2/3]
Python: |
---|
| cv.FileNode.at( | i | ) -> | retval |
| cv.FileNode.getNode( | nodename | ) -> | retval |
Returns element of a mapping node or a sequence node.
- Parameters
-
nodename | Name of an element in the mapping node. |
- Returns
- Returns the element with the given identifier.
◆ operator[]() [3/3]
FileNode cv::FileNode::operator[] |
( |
int |
i | ) |
const |
Python: |
---|
| cv.FileNode.at( | i | ) -> | retval |
| cv.FileNode.getNode( | nodename | ) -> | retval |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
- Parameters
-
i | Index of an element in the sequence node. |
◆ ptr() [1/2]
uchar * cv::FileNode::ptr |
( |
| ) |
|
◆ ptr() [2/2]
const uchar * cv::FileNode::ptr |
( |
| ) |
const |
◆ rawSize()
size_t cv::FileNode::rawSize |
( |
| ) |
const |
Python: |
---|
| cv.FileNode.rawSize( | | ) -> | retval |
returns raw size of the FileNode in bytes
◆ readRaw()
void cv::FileNode::readRaw |
( |
const String & |
fmt, |
|
|
void * |
vec, |
|
|
size_t |
len |
|
) |
| const |
Reads node elements to the buffer with the specified format.
Usually it is more convenient to use operator >>
instead of this method.
- Parameters
-
fmt | Specification of each array element. See format specification |
vec | Pointer to the destination array. |
len | Number of bytes to read (buffer size limit). If it is greater than number of remaining elements then all of them will be read. |
◆ real()
double cv::FileNode::real |
( |
| ) |
const |
Python: |
---|
| cv.FileNode.real( | | ) -> | retval |
Simplified reading API to use with bindings.
◆ setValue()
void cv::FileNode::setValue |
( |
int |
type, |
|
|
const void * |
value, |
|
|
int |
len = -1 |
|
) |
| |
Internal method used when reading FileStorage. Sets the type (int, real or string) and value of the previously created node.
◆ size()
size_t cv::FileNode::size |
( |
| ) |
const |
Python: |
---|
| cv.FileNode.size( | | ) -> | retval |
returns the number of elements in the node, if it is a sequence or mapping, or 1 otherwise.
◆ string()
Python: |
---|
| cv.FileNode.string( | | ) -> | retval |
Simplified reading API to use with bindings.
◆ type()
int cv::FileNode::type |
( |
| ) |
const |
Python: |
---|
| cv.FileNode.type( | | ) -> | retval |
◆ blockIdx
size_t cv::FileNode::blockIdx |
◆ fs
FileStorage::Impl* cv::FileNode::fs |
◆ ofs
The documentation for this class was generated from the following file: