root/lang/cpluspluscli/OpenCvSharp/trunk/OpenCvSharp/CvFileStorage.h @ 26307

Revision 21994, 3.2 kB (checked in by schima, 6 years ago)

Shift_JISになっていたソースをUTF-8化。

Line 
1/**
2 * (C) 2008 Schima
3 * This code is licenced under the LGPL.
4 */
5
6#pragma once
7
8#include "CvArr.h"
9#include "CvFileNode.h"
10#include "CvMemStorage.h"
11#include "CvStringHashNode.h"
12#include "FileStorageMode.h"
13
14using namespace System;
15using namespace System::IO;
16using namespace System::Runtime::InteropServices;
17namespace N = KwsmLab::OpenCvSharp;
18
19// 名前衝突回避
20typedef CvFileStorage __CvFileStorage;
21
22namespace KwsmLab {
23namespace OpenCvSharp
24{
25        /// <summary>
26        /// ファイルストレージ.
27        /// 後述する様々な関数はCvFileStorageを引数に持ち,スカラー値で構成される階層的なコレクションや,行列やシーケンス,
28        /// グラフなどの標準的なCXCoreオブジェクト,ユーザ定義オブジェクトなどのセーブとロードをユーザに提供する.
29        /// CXCoreは,XML(http://www.w3c.org/XML)や YAML (http://www.yaml.org)形式のデータの読み書きが可能である.
30        /// </summary>
31        public ref class CvFileStorage : public IDisposable
32        {
33        private:
34                __CvFileStorage* ptr;
35                Boolean isDisposed;
36
37        internal:
38                /// <summary>
39                /// CvFileStorageポインタ (CvFileStorage*)
40                /// </summary>
41                property __CvFileStorage* Ptr{
42                        __CvFileStorage* get(void){ return ptr; }
43                        void set(__CvFileStorage* value){ ptr = value; }
44                }
45
46        public:
47                CvFileStorage( String^ filename, N::CvMemStorage^ memstorage, FileStorageMode flags );
48                !CvFileStorage( void );
49                ~CvFileStorage( void );
50
51                void Close( void );
52                void EndWriteStruct( void );
53                N::CvFileNode^ GetFileNode( N::CvFileNode^ map, N::CvStringHashNode^ key );
54                N::CvFileNode^ GetFileNode( N::CvFileNode^ map, N::CvStringHashNode^ key, Boolean create_missing );
55                N::CvFileNode^ GetFileNodeByName( N::CvFileNode^ map, String^ name );
56                N::CvStringHashNode^ GetHashedKey( String^ name );
57                N::CvStringHashNode^ GetHashedKey( String^ name, Boolean create_missing );
58                N::CvFileNode^ GetRootFileNode( void );
59                N::CvFileNode^ GetRootFileNode( Int32 stream_index );
60                generic<typename T> where T : N::CvArr
61                        T Read( N::CvFileNode^ node );
62                generic<typename T> where T : N::CvArr
63                        T ReadByName( N::CvFileNode^ map, String^ name );
64                Int32 ReadIntByName( N::CvFileNode^ map, String^ name );
65                Int32 ReadIntByName( N::CvFileNode^ map, String^ name, Int32 default_value );
66                Double ReadRealByName( N::CvFileNode^ map, String^ name );
67                Double ReadRealByName(N::CvFileNode^ map, String^ name, Double default_value );
68                String^ ReadStringByName( N::CvFileNode^ map, String^ name );
69                String^ ReadStringByName( N::CvFileNode^ map, String^ name, String^ default_value );
70                void Release( void );
71                void StartNextStream( void );
72                void StartWriteStruct( String^ name, NodeType struct_flags );
73                void StartWriteStruct( String^ name, NodeType struct_flags, String^ type_name );
74                void Write( String^ name, N::CvArr^ ptr );
75                void WriteComment( String^ comment );
76                void WriteComment( String^ comment, Boolean eol_comment );
77                void WriteInt( String^ name, Int32 value );
78                void WriteReal( String^ name, Double value );
79                void WriteString( String^ name, String^ str );
80                void WriteString( String^ name, String^ str, Boolean quote );
81        };
82
83}
84}
Note: See TracBrowser for help on using the browser.