mi32/uom.h File Reference

<mi32/uom.h> More...

#include <mi32/milist.h>
Include dependency graph for uom.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  UOM::CONVERTER
class  UOM::MEASURE
 Measure container. More...
class  UOM::SYSTEM
 System methods. More...
class  UOM::UNIT
 Single unit container. More...

Namespaces

namespace  UOM

Defines

#define CLASSLIBEXPORT   MI_DLLCLASSIMPORT
#define LIBEXPORT   MI_DLLIMPORT
#define UNIT_Area_SquareKilometer   3
#define UNIT_Area_SquareKilometers   3
#define UNIT_Area_SquareMeter   0
#define UNIT_Area_SquareMeters   0
#define UNIT_Area_SquareMillimeter   2
#define UNIT_Area_SquareMillimeters   2
#define UNIT_Distance_Centimeters   UNIT_Length_Centimeter
#define UNIT_Distance_Feet   UNIT_Length_Foot
#define UNIT_Distance_Inches   UNIT_Length_Inch
#define UNIT_Distance_Kilometers   UNIT_Length_Kilometer
#define UNIT_Distance_Meters   UNIT_Length_Meter
#define UNIT_Distance_Micrometers   UNIT_Length_Micrometer
#define UNIT_Distance_Millimeters   UNIT_Length_Millimeter
#define UNIT_Distance_Nanometers   UNIT_Length_Nanometer
#define UNIT_Length_Centimeter   1
#define UNIT_Length_Decimeter   10
#define UNIT_Length_Foot   4
#define UNIT_Length_Foot_US   16
#define UNIT_Length_HundredthFoot   65
#define UNIT_Length_Inch   6
#define UNIT_Length_Kilometer   3
#define UNIT_Length_Meter   0
#define UNIT_Length_Micrometer   8
#define UNIT_Length_Mile   7
#define UNIT_Length_Millimeter   2
#define UNIT_Length_Nanometer   9
#define UNIT_Length_TenthFoot   64
#define UNIT_None   0
#define UNIT_PlaneAngle_ArcMinute   5
#define UNIT_PlaneAngle_ArcSecond   4
#define UNIT_PlaneAngle_CentisimalMinute   8
#define UNIT_PlaneAngle_CentisimalSecond   9
#define UNIT_PlaneAngle_Degree   0
#define UNIT_PlaneAngle_Degrees   0
#define UNIT_PlaneAngle_Gon   6
#define UNIT_PlaneAngle_Grad   3
#define UNIT_PlaneAngle_Hour   10
#define UNIT_PlaneAngle_Radian   1
#define UNIT_PlaneAngle_Radians   1
#define UNIT_Scale_PartsPerMillion   3
#define UNIT_Scale_Percent   1
#define UNIT_Scale_Unity   0
#define UNIT_Time_Hour   2
#define UNIT_Time_Microsecond   7
#define UNIT_Time_Microseconds   7
#define UNIT_Time_Millisecond   6
#define UNIT_Time_Milliseconds   6
#define UNIT_Time_Minute   1
#define UNIT_Time_Second   0
#define UNIT_Time_Seconds   0
#define UNIT_TYPE_Acceleration   UOM::MEASURE::TYPE_Acceleration
#define UNIT_TYPE_AngularVelocity   UOM::MEASURE::TYPE_AngularVelocity
#define UNIT_TYPE_Area   UOM::MEASURE::TYPE_Area
#define UNIT_TYPE_Constant   0
#define UNIT_TYPE_Date   UOM::MEASURE::TYPE_Date
#define UNIT_TYPE_Distance   UOM::MEASURE::TYPE_Distance
#define UNIT_TYPE_Length   UOM::MEASURE::TYPE_Length
#define UNIT_TYPE_None   UOM::MEASURE::TYPE_None
#define UNIT_TYPE_PlaneAngle   UOM::MEASURE::TYPE_PlaneAngle
#define UNIT_TYPE_Time   UOM::MEASURE::TYPE_Time
#define UNIT_TYPE_Velocity   UOM::MEASURE::TYPE_Velocity
#define UNIT_TYPE_Volume   UOM::MEASURE::TYPE_Volume
#define UNIT_Velocity_FeetPerSecond   2
#define UNIT_Velocity_KilometersPerHour   4
#define UNIT_Velocity_Knots   6
#define UNIT_Velocity_MetersPerSecond   0
#define UNIT_Velocity_MilesPerHour   5
#define UNIT_Volume_CubicMeter   0
#define UNIT_Volume_CubicMeters   0

Typedefs

typedef MILIST< MEASURE > UOM::MEASURELIST
typedef UOM::MEASURE::TYPE UNIT_TYPE

Enumerations

enum  UOM::FORMATSCALE { UOM::FORMATSCALE_Ratio = 0x00, UOM::FORMATSCALE_UnitFraction = 0x01, UOM::FORMATSCALE_AddNewline = 0x02, UOM::FORMATSCALE_AddSpacesAlways = 0x04 }
enum  UOM::IDNUM {
  UOM::IDNUM_Unspecified = 0, UOM::IDNUM_Scale_Unity = (MEASURE::TYPE_Scale << 8) | UNIT_Scale_Unity, UOM::IDNUM_Scale_Percent = (MEASURE::TYPE_Scale << 8) | UNIT_Scale_Percent, UOM::IDNUM_Scale_PartsPerMillion = (MEASURE::TYPE_Scale << 8) | UNIT_Scale_PartsPerMillion,
  UOM::IDNUM_Length_Kilometer = (MEASURE::TYPE_Length << 8) | UNIT_Length_Kilometer, UOM::IDNUM_Length_Decimeter = (MEASURE::TYPE_Length << 8) | UNIT_Length_Decimeter, UOM::IDNUM_Length_Meter = (MEASURE::TYPE_Length << 8) | UNIT_Length_Meter, UOM::IDNUM_Length_Centimeter = (MEASURE::TYPE_Length << 8) | UNIT_Length_Centimeter,
  UOM::IDNUM_Length_Millimeter = (MEASURE::TYPE_Length << 8) | UNIT_Length_Millimeter, UOM::IDNUM_Length_Micrometer = (MEASURE::TYPE_Length << 8) | UNIT_Length_Micrometer, UOM::IDNUM_Length_Nanometer = (MEASURE::TYPE_Length << 8) | UNIT_Length_Nanometer, UOM::IDNUM_Length_Mile = (MEASURE::TYPE_Length << 8) | UNIT_Length_Mile,
  UOM::IDNUM_Length_Foot = (MEASURE::TYPE_Length << 8) | UNIT_Length_Foot, UOM::IDNUM_Length_TenthFoot = (MEASURE::TYPE_Length << 8) | UNIT_Length_TenthFoot, UOM::IDNUM_Length_HundredthFoot = (MEASURE::TYPE_Length << 8) | UNIT_Length_HundredthFoot, UOM::IDNUM_Length_Inch = (MEASURE::TYPE_Length << 8) | UNIT_Length_Inch,
  UOM::IDNUM_PlaneAngle_Degree = (MEASURE::TYPE_PlaneAngle << 8) | UNIT_PlaneAngle_Degree, UOM::IDNUM_PlaneAngle_Radian = (MEASURE::TYPE_PlaneAngle << 8) | UNIT_PlaneAngle_Radian, UOM::IDNUM_PlaneAngle_ArcMinute = (MEASURE::TYPE_PlaneAngle << 8) | UNIT_PlaneAngle_ArcMinute, UOM::IDNUM_PlaneAngle_ArcSecond = (MEASURE::TYPE_PlaneAngle << 8) | UNIT_PlaneAngle_ArcSecond,
  UOM::IDNUM_Area_SquareMeter = (MEASURE::TYPE_Area << 8) | UNIT_Area_SquareMeter, UOM::IDNUM_Area_SquareKilometer = (MEASURE::TYPE_Area << 8) | UNIT_Area_SquareKilometer, UOM::IDNUM_Area_SquareMillimeter = (MEASURE::TYPE_Area << 8) | UNIT_Area_SquareMillimeter, UOM::IDNUM_Time_Second = (MEASURE::TYPE_Time << 8) | UNIT_Time_Second,
  UOM::IDNUM_Time_Millisecond = (MEASURE::TYPE_Time << 8) | UNIT_Time_Millisecond, UOM::IDNUM_Time_Microsecond = (MEASURE::TYPE_Time << 8) | UNIT_Time_Microsecond, UOM::IDNUM_Velocity_MetersPerSecond = (MEASURE::TYPE_Velocity << 8) | UNIT_Velocity_MetersPerSecond, UOM::IDNUM_Velocity_FeetPerSecond = (MEASURE::TYPE_Velocity << 8) | UNIT_Velocity_FeetPerSecond,
  UOM::IDNUM_Velocity_KilometersPerHour = (MEASURE::TYPE_Velocity << 8) | UNIT_Velocity_KilometersPerHour, UOM::IDNUM_Velocity_MilesPerHour = (MEASURE::TYPE_Velocity << 8) | UNIT_Velocity_MilesPerHour, UOM::IDNUM_Velocity_Knots = (MEASURE::TYPE_Velocity << 8) | UNIT_Velocity_Knots
}
enum  UOM::SYSTEMID { UOM::SYSTEMID_Unspecified = 0, UOM::SYSTEMID_Metric = 1, UOM::SYSTEMID_English = 2 }

Functions

LIBEXPORT double UOM::ConvertToScale (double ScaleDenominator, UOM::SYSTEMID UnitSystem, const UOM::UNIT &UnitSrc, UOM::UNIT &UnitTgt)
LIBEXPORT MISTRING UOM::FormatScale (double ScaleDenominator, UOM::SYSTEMID UnitSystem, const UOM::UNIT &UnitSrc, FORMATSCALE format, int MinPrecision=3)
bool UOM::operator!= (const UNIT &lhs, const UNIT &rhs)
bool UOM::operator!= (const MEASURE &lhs, const MEASURE &rhs)
bool UOM::operator== (const UNIT &lhs, const UNIT &rhs)
bool UOM::operator== (const MEASURE &lhs, const MEASURE &rhs)

Detailed Description

<mi32/uom.h>

UOM (Unit of Measure) system definitions


Define Documentation

#define CLASSLIBEXPORT   MI_DLLCLASSIMPORT
#define LIBEXPORT   MI_DLLIMPORT
#define UNIT_Area_SquareKilometer   3
#define UNIT_Area_SquareKilometers   3
#define UNIT_Area_SquareMeter   0
#define UNIT_Area_SquareMeters   0
#define UNIT_Area_SquareMillimeter   2
#define UNIT_Area_SquareMillimeters   2
#define UNIT_Distance_Centimeters   UNIT_Length_Centimeter
#define UNIT_Distance_Feet   UNIT_Length_Foot
#define UNIT_Distance_Inches   UNIT_Length_Inch
#define UNIT_Distance_Kilometers   UNIT_Length_Kilometer
#define UNIT_Distance_Meters   UNIT_Length_Meter
#define UNIT_Distance_Micrometers   UNIT_Length_Micrometer
#define UNIT_Distance_Millimeters   UNIT_Length_Millimeter
#define UNIT_Distance_Nanometers   UNIT_Length_Nanometer
#define UNIT_Length_Centimeter   1
#define UNIT_Length_Decimeter   10
#define UNIT_Length_Foot   4
#define UNIT_Length_Foot_US   16
#define UNIT_Length_HundredthFoot   65
#define UNIT_Length_Inch   6
#define UNIT_Length_Kilometer   3
#define UNIT_Length_Meter   0
#define UNIT_Length_Micrometer   8
#define UNIT_Length_Mile   7
#define UNIT_Length_Millimeter   2
#define UNIT_Length_Nanometer   9
#define UNIT_Length_TenthFoot   64
#define UNIT_None   0

Commmon MicroImages numeric Unit identifiers.

#define UNIT_PlaneAngle_ArcMinute   5
#define UNIT_PlaneAngle_ArcSecond   4
#define UNIT_PlaneAngle_CentisimalMinute   8
#define UNIT_PlaneAngle_CentisimalSecond   9
#define UNIT_PlaneAngle_Degree   0
#define UNIT_PlaneAngle_Degrees   0
#define UNIT_PlaneAngle_Gon   6
#define UNIT_PlaneAngle_Grad   3
#define UNIT_PlaneAngle_Hour   10
#define UNIT_PlaneAngle_Radian   1
#define UNIT_PlaneAngle_Radians   1
#define UNIT_Scale_PartsPerMillion   3
#define UNIT_Scale_Percent   1
#define UNIT_Scale_Unity   0
#define UNIT_Time_Hour   2
#define UNIT_Time_Microsecond   7
#define UNIT_Time_Microseconds   7
#define UNIT_Time_Millisecond   6
#define UNIT_Time_Milliseconds   6
#define UNIT_Time_Minute   1
#define UNIT_Time_Second   0
#define UNIT_Time_Seconds   0
#define UNIT_TYPE_Acceleration   UOM::MEASURE::TYPE_Acceleration
#define UNIT_TYPE_AngularVelocity   UOM::MEASURE::TYPE_AngularVelocity
#define UNIT_TYPE_Area   UOM::MEASURE::TYPE_Area
#define UNIT_TYPE_Constant   0

Constants and unitless database fields.

#define UNIT_TYPE_Date   UOM::MEASURE::TYPE_Date
#define UNIT_TYPE_Distance   UOM::MEASURE::TYPE_Distance
#define UNIT_TYPE_Length   UOM::MEASURE::TYPE_Length
#define UNIT_TYPE_None   UOM::MEASURE::TYPE_None

INC_MI32_UOM_H.

#define UNIT_TYPE_PlaneAngle   UOM::MEASURE::TYPE_PlaneAngle
#define UNIT_TYPE_Time   UOM::MEASURE::TYPE_Time
#define UNIT_TYPE_Velocity   UOM::MEASURE::TYPE_Velocity
#define UNIT_TYPE_Volume   UOM::MEASURE::TYPE_Volume
#define UNIT_Velocity_FeetPerSecond   2
#define UNIT_Velocity_KilometersPerHour   4
#define UNIT_Velocity_Knots   6
#define UNIT_Velocity_MetersPerSecond   0
#define UNIT_Velocity_MilesPerHour   5
#define UNIT_Volume_CubicMeter   0
#define UNIT_Volume_CubicMeters   0

Typedef Documentation

End namespace UOM.


Generated on Sun Oct 7 21:28:43 2012 for TNTsdk 2012 by  doxygen 1.6.1