summaryrefslogtreecommitdiff
path: root/os2eindopdracht/SampleStream.h
blob: 7ff55945e35dc37b81210be446fae7737b0bd159 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#pragma once

#include <string>
#include <vector>

#include "SampleBlock.h"

using std::string;
using std::vector;

class SampleStream {
public:
  SampleStream(string input_stream);

public:
	/** @brief load raw pcm sample bytes (signed 16-bit little endian) to _stream */
  void load(string input);
	/** @brief print raw pcb sample bytes from _stream */
  string save();
	/** @brief return array of SampleBlock for _stream using block_size */
	vector<SampleBlock> split(size_t block_size);

public:
  vector<int16_t> _stream;
};