oInt Object

Main Index
Object List
Back to top of page Description:
 The oInt Object manages a signed 16-Bit variable so that it can be used in a virtual circuit.  As well as the value of the variable, status properties are provided that can also be used in a virtual circuit.

There are three main differences between this object and a standard Int variable. 

  1. This Object's Value property is an instance of the oValue Object which can be pointed to by a Virtual Circuit. 
  2. This Object maintains status bits which can be pointed to by Virtual Circuits.
  3. This Object is 1 byte larger in order to store the status information.
 The following table lists the size and availability of the oInt Object.
 ObjectSizeDescriptionA1A2B1B2C1
oInt3 BytesManages a 16-bit signed value with a range of -32,768 to +32,767.xxx
Back to top of page Operation:
 An oInt Object variable stores a signed 16 bit value (two bytes) in its Value property and maintains other values that represent the status of those 16 bits.

The Negative property indicates the Most-Significant-Bit of the value which is used to indicate when the value is a negative number.

The NonZero Property indicates if the value is not zero.

Back to top of page Properties:
 

The following table lists the properties of the oInt Object:

Property

Description

Value
The value of the signed 16-bit variable.
Object Class: oValue Value Range: -32,768 to +32,767
Data Type: Numeric Default Value: 0
Negative
A value that indicates the Value property is less than zero.
Object Class: oLogic Value Range: 0 - 1
Data Type: Numeric Default Value: 0
Notes on virtual circuit usage: Not all implementations of the oInt Object have a linkable Negative property.  While all instance of the oInt Object that you create in your programs will have a linkable Negative property,  some of the ooPIC Objects create a custom oInt Object instance that cannot.
NegativeDescription
0

The Value property is a Positive value.

1

The Value property is Negative Value.

NonZero
A value that indicates the Value property is more than or less than zero.
Object Class: oLogic Value Range: 0 - 1
Data Type: Numeric Default Value: 0
Notes on virtual circuit usage: Not all implementations of the oInt Object have a linkable NonZero property.  While all instance of the oInt Object that you create in your programs will have a linkable NonZero property,  some of the ooPIC Objects create a custom oInt Object instance that cannot. 
NonZeroConstantDescription
0cvFalse

The Value property is zero.

1cvTrue

The Value property is not zero.

Data
The data for the Value property.
Object Class: oVar16 Value Range: 0 to 65535
Data Type: Numeric Default Value: 0
Address
Returns a pointer to the address of the oCounter Object instance.
Object Class: oAddress Value Range: 0 - 127
Data Type:Pointer (Read Only) Default Value: Address of Object

Back to top of page Methods:
 

The following table lists the Methods of the oInt Object
MethodDescription
Value.Clear

Clears the Value property to 0.

Value.Dec

Decrements the Value property by 1.

Value.Inc

Increments the Value property by 1.

Value.Invert

Inverts the bits in the Value property

Value.LShift

Shifts the bits in the Value property left.

Value.RShift

Shifts the bits in the Value property Right.

Value.Set

Sets the Value property to -32,768.

InitInitializes the properties.

Back to top of page Example:
 In the following example, a Virtual Circuit is created that outputs the status properties.
' This program creates a Virtual
' Circuit that connects the oInt's
' NonZero and Negative properties to 
' Digital Outputs.  Starting from a 
' value of 10, it decreases the  
' oInt's Value property every  
' 1/10 of a second.

Dim V As New oInt
Dim W1 As New oWire
Dim W2 As New oWire
Dim L1 As New oDIO1
Dim L2 As New oDIO1

Sub main() 
  L1.IOLine = 8
  L1.Direction = cvOutput
  W1.Input.Link(V.NonZero)
  W1.Output.Link(L1.State)
  W1.Operate = cvOn

  L2.IOLine = 10
  L2.Direction = cvOutput
  W2.Input.Link(V.Negative)
  W2.Output.Link(L2.State)
  W2.Operate = cvOn

  V = 10
  Do
    V.Value.Dec
    Delay = 100
  Loop 
  
End Sub
Back to top of page Related Items:
 The following table lists objects that use the oInt Object.
 ObjectDescriptionA1A2B1B2C1
oBitShifterOutputs a shifting bit pattern.xxx
oStepperControls a stepper motor.xxx
oStepperSPControls a stepper motors speedxx
 The following table lists other objects with related functions.
 ObjectDescriptionA1A2B1B2C1
oBitManages a 1-bit value with a range of 0 to 1.xxxxx
oNibManages a 4-bit value with a range of 0 to 15.xxxxx
oNibXManages a 4-bit signed value with a range of -8 to +7.x
oByteManages a 8-bit value with a range of 0 to 255.xxxxx
oCharManages a 8-bit signed value with a range of -128 to -127.xxx
oWordManages a 16-bit value with a range of 0 to 65,535.xxxxx
oBuffer(1-32)32 Objects that Manage various sized data-buffer/string variable.xxxxx
Back to top of page Version History and Bug List:
 Firmware Ver B1: Introduced.

Bugs: No known bugs.


 

ooPIC Compiler Ver 6.0 (c) Copyright 1997 - 2007 Savage Innovations, LLC.