EHS
AudioCodec.h
Go to the documentation of this file.
1
#pragma once
2
3
#include "
ehs/EHS.h
"
4
#include "
ehs/Str.h
"
5
#include "
ehs/io/File.h
"
6
7
namespace
ehs
8
{
9
class
Audio;
10
11
class
EHS_LIB_IO
AudioCodec
12
{
13
private
:
14
Str_8
id;
15
UInt_64 hashExt;
16
Str_8
ext;
17
Endianness
endianness;
18
bool (*encodeCb)(
const
AudioCodec
*
const
,
Serializer<UInt_64>
&,
const
Audio
*);
19
bool (*decodeCb)(
const
AudioCodec
*
const
,
Serializer<UInt_64>
&,
Audio
*);
20
21
public
:
22
AudioCodec
();
23
24
AudioCodec
(
Str_8
id
,
Str_8
ext,
const
Endianness
end,
25
bool
(*encodeCb)(
const
AudioCodec
*
const
,
Serializer<UInt_64>
&,
const
Audio
*),
26
bool
(*decodeCb)(
const
AudioCodec
*
const
,
Serializer<UInt_64>
&,
Audio
*));
27
28
AudioCodec
(
AudioCodec
&& codec)
noexcept
;
29
30
AudioCodec
(
const
AudioCodec
& codec);
31
32
AudioCodec
& operator=(
AudioCodec
&& codec)
noexcept
;
33
34
AudioCodec
& operator=(
const
AudioCodec
& codec);
35
36
Str_8
GetId()
const
;
37
38
UInt_64 GetHashExt()
const
;
39
40
Str_8
GetExt()
const
;
41
42
Endianness
GetEndianness()
const
;
43
44
bool
Encode(
Serializer<UInt_64>
& out,
const
Audio
* in)
const
;
45
46
bool
Decode(
Serializer<UInt_64>
& in,
Audio
* out)
const
;
47
};
48
}
EHS.h
File.h
Str.h
ehs::AudioCodec
Definition:
AudioCodec.h:12
ehs::Audio
Definition:
Audio.h:15
ehs::Serializer< UInt_64 >
ehs::Str< Char_8, UInt_64 >
ehs
Definition:
Anchor.h:6
ehs::Endianness
Endianness
Definition:
CPU.h:21
include
ehs
io
audio
AudioCodec.h
Generated by
1.9.4