aboutsummaryrefslogtreecommitdiff
path: root/Src/id3v2/id3_int28.h
blob: ab1cb51c3fede32282cb53d04c8a356daa4eafe6 (plain) (blame)
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
//  The authors have released ID3Lib as Public Domain (PD) and claim no copyright,
//  patent or other intellectual property protection in this work.  This means that
//  it may be modified, redistributed and used in commercial and non-commercial
//  software and hardware without restrictions.  ID3Lib is distributed on an "AS IS"
//  basis, WITHOUT WARRANTY OF ANY KIND, either express or implied.
//  
//  The ID3Lib authors encourage improvements and optimisations to be sent to the
//  ID3Lib coordinator, currently Dirk Mahoney (dirk@id3.org).  Approved
//  submissions may be altered, and will be included and released under these terms.
//  
//  Mon Nov 23 18:34:01 1998


#ifndef	ID3LIB_TYPES_28BITINT_H
#define	ID3LIB_TYPES_28BITINT_H


#include "id3_types.h"


class int28
{
public:
				int28( uint32_t val = 0 ); // used for int32 -> int28 conversion
				int28( const uchar *val ); // used for int28 -> int32 conversion
				int28 &setFromFile(uint32_t val); // used for int28 -> int32 conversion

uchar			operator[]						( size_t posn );
luint			get								( void );

// *** PRIVATE INTERNAL DATA - DO NOT USE *** PRIVATE INTERNAL DATA - DO NOT USE ***

protected:
void			set								( uint32_t val );
uchar			value[ sizeof ( luint ) ];		// the integer stored as a uchar array
};


#endif