AudRecordLib
|
00001 00007 #ifndef AUDRECORDCLI_CODECWRAP_H 00008 #define AUDRECORDCLI_CODECWRAP_H 00009 00010 #pragma once 00011 00012 namespace AudRecordCLI 00013 { 00015 public ref struct CodecConfig 00016 { 00018 property String^ Name 00019 { 00020 String^ get() 00021 { 00022 return name; 00023 } 00024 internal: 00025 void set(String^ newName) 00026 { 00027 name = newName; 00028 } 00029 } 00030 private: 00032 String^ name; 00033 internal: 00035 property Object^ DescInterface; 00036 }; 00037 00039 typedef List<CodecConfig^> ConfigList; 00040 00042 public ref struct Codec 00043 { 00045 property String^ Name 00046 { 00047 String^ get() 00048 { 00049 return name; 00050 } 00051 internal: 00052 void set(String^ newName) 00053 { 00054 name = newName; 00055 } 00056 } 00057 00059 property ConfigList^ Configs 00060 { 00061 ConfigList^ get() 00062 { 00063 return configs; 00064 } 00065 internal: 00066 void set(ConfigList^ newList) 00067 { 00068 configs = newList; 00069 } 00070 } 00071 private: 00073 String^ name; 00075 ConfigList^ configs; 00076 }; 00077 00079 typedef List<Codec^> CodecList; 00080 00082 public value struct Codecs abstract sealed 00083 { 00084 private: 00085 static ConfigList^ GetConfigListForCodec(::Codec* pCodec); 00086 public: 00087 static CodecList^ Get(); 00088 }; 00089 } 00090 00093 #endif