haiku/headers/os/locale/NumberFormat.h
Adrien Destugues 5d5ec05b1d B*Format: make immutable and remove locking
The language and formatting conventions can now only be set when
creating the objects. This removed the needs for locking them when
formatting to avoid some other thread changing the format while it's
being used.

Adjust tests and DeskBar TimeView to the API changes.
2014-10-27 14:08:42 +01:00

47 lines
1.0 KiB
C++

/*
* Copyright 2003-2014, Haiku, Inc.
* Distributed under the terms of the MIT License.
*/
#ifndef _B_NUMBER_FORMAT_H_
#define _B_NUMBER_FORMAT_H_
#include <Format.h>
enum BNumberElement {
B_NUMBER_ELEMENT_INVALID = B_BAD_DATA,
B_NUMBER_ELEMENT_INTEGER = 0,
B_NUMBER_ELEMENT_FRACTIONAL,
B_NUMBER_ELEMENT_CURRENCY
};
class BNumberFormat : public BFormat {
public:
BNumberFormat();
BNumberFormat(const BNumberFormat &other);
~BNumberFormat();
// formatting
ssize_t Format(char* string, size_t maxSize,
const double value) const;
status_t Format(BString& string, const double value)
const;
ssize_t Format(char* string, size_t maxSize,
const int32 value) const;
status_t Format(BString& string, const int32 value)
const;
// monetary
ssize_t FormatMonetary(char* string, size_t maxSize,
const double value) const;
status_t FormatMonetary(BString& string,
const double value) const;
};
#endif // _B_NUMBER_FORMAT_H_