| Customize Help
| Save Settings

MgraGetHookInfo



Function Map
Synopsis
Get information about a 2D graphics list event.
Syntax
MIL_INT MgraGetHookInfo(
MIL_ID EventId, //in
MIL_INT64 InfoType, //in
void *UserVarPtr //out
)
Description

This function allows you to get information about the event that caused the hook-handler function to be called. MgraGetHookInfo() should only be called within the scope of a 2D graphics list hook-handler function (see MgraHookFunction()).

Note that this function reference has not been updated for a MIL system added during a MIL update. Refer to the MIL system's release note to see which MIL system’s documentation you should use in its place and any possible differences.
Parameters
This function is not supported on the selected boards.
This function reference has not been updated for the selected MIL system. To show the content of this page, choose a second MIL system; refer to the MIL system's release note to see which MIL system’s documentation to choose and any possible differences.
Parameters
EventId

Specifies the 2D graphics list event identifier received by the hook-handler function (see MgraHookFunction()). The event will be of the type passed to the HookType parameter of the hook-handler function.

See the Parameter associations section for possible values that can be specified.

InfoType

Specifies the type of information to get.

See the Parameter associations section for possible values that can be specified.

UserVarPtr
Accepts the address of one of the following (see the Parameter associations section for specifics on which is expected):
  • MIL_DOUBLE
  • MIL_ID
  • MIL_INT
  • MIL_INT32
  • MIL_INT64

Specifies the address in which to write the requested information.

See the Parameter associations section for possible values that can be returned.

The table below lists possible values for the EventId and InfoType parameters and possible values returned to the UserVarPtr parameter.

function map For getting information about a 2D graphics list event
Click to summarizeEventId Description
InfoType
UserVarPtr
- Possible values returned
Click to summarize An M_GRAPHIC_LIST_MODIFIED event ID +

Specifies that the event that called the hook-handler function was due to the 2D graphics list being modified, either by a MIL function or by interactive manipulations.

(summarize)
Click to summarize M_GRAPHIC_LIST_ID +

Retrieves the MIL identifier of the 2D graphics list that triggered the event.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_ID
Click to summarize An M_GRAPHIC_MODIFIED event ID +

Specifies that the event that called the hook-handler function was due to a graphic in the 2D graphics list being modified, either by a MIL function or by interactive manipulations.

If a graphic's selection (MgraControlList() with M_GRAPHIC_SELECTED) is changed either programmatically or interactively, this event will not be triggered; the M_GRAPHIC_SELECTION_MODIFIED event will be triggered instead.

(summarize)
Click to summarize M_GRAPHIC_CONTROL_TYPE +

Inquires the type of modification made to the graphics in the list that triggered the event.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_INT64
Click to summarize M_ANGLE

Specifies that the angle of the graphic was modified. INFO

Click to summarize M_ANGLE_END

Specifies that the angle at which to stop drawing the arc was modified. INFO

Click to summarize M_ANGLE_SNAPPING_VALUE

Specifies that the angular value used as a multiple when rotating the graphic was modified. INFO

Click to summarize M_ANGLE_START

Specifies that the angle at which to start drawing the arc was modified. INFO

Click to summarize M_APPLY_SCALE

Specifies that a uniform scaling operation was performed on the graphic. INFO

Click to summarize M_ARC_STYLE

Specifies that the option of whether to draw an arc or a sector was modified. INFO

Click to summarize M_BACKCOLOR

Specifies that the background color of the text was modified.

Click to summarize M_BACKGROUND_MODE

Specifies that the option of whether to fill the text's background was modified.

Click to summarize M_COLOR

Specifies that the foreground color of the graphic was modified.

Click to summarize M_CONSTRAIN_ASPECT_RATIO

Specifies that the option of whether to force the width and height of a graphic to be equal was modified. INFO

Click to summarize M_DELETE

Specifies that one of the following has been called on the 2D graphics list, resulting in some graphics being removed from the 2D graphics list: MgraControlList() with M_DELETE, MgraClear(), or when MgraCopy() with M_MOVE deletes graphics from a source 2D graphics list.

Click to summarize M_DRAW_DIRECTION

Specifies that the option of how an arrow, pointing in the direction with which a graphic was defined is rendered (drawn), was modified.

Click to summarize M_DRAW_OFFSET_X

Specifies that the offset to subtract from the source X-coordinates before rendering the graphic was modified. INFO

Click to summarize M_DRAW_OFFSET_Y

Specifies that the offset to subtract from the source Y-coordinates before rendering the graphic was modified. INFO

Click to summarize M_DRAW_ZOOM_X

Specifies that the scaling factor in the X-direction was modified. INFO

Click to summarize M_DRAW_ZOOM_Y

Specifies that the scaling factor in the Y-direction was modified. INFO

Click to summarize M_EASY_SELECTION

Specifies that the option of whether MIL allows the easy selection of graphics on the display was modified.

Click to summarize M_EDITABLE

Specifies that the option of whether a graphic can be edited, via user interaction in an interactive display, was modified. INFO

Click to summarize M_FILLED

Specifies that the option of whether to fill the graphic was modified. INFO

Click to summarize M_FIXTURE

Specifies that the camera calibration information used when rendering (drawing or displaying) a graphic that has been defined in world units (M_INPUT_UNITS set to M_WORLD) was modified. INFO

Click to summarize M_FONT

Specifies that the font of the characters in the text was modified.

Click to summarize M_FONT_AUTO_SELECT

Specifies that the option of whether MIL should search for a suitable font to draw the text, if the currently selected font (M_FONT) is a TrueType font that does not support the character code, was modified. INFO

Click to summarize M_FONT_SIZE

Specifies that the font size, when using a TrueType font, was modified. INFO

Click to summarize M_FONT_X_SCALE

Specifies that the font's horizontal scaling factor was modified. INFO

Click to summarize M_FONT_Y_SCALE

Specifies that the font's vertical scaling factor was modified. INFO

Click to summarize M_GRAPHIC_CONVERSION_MODE

Specifies that how the shape of a graphic, defined in world units, is converted to pixels (rendered), was modified. INFO

Click to summarize M_GRAPHIC_CREATE

Specifies that a new graphic has been added to the 2D graphics list, either using a MIL function or through interactive manipulations.

Click to summarize M_GRAPHIC_INTERACTIVE

Specifies that interactive manipulations, such as translating, rotating, and resizing, have changed the properties of a graphic in the 2D graphics list.

Click to summarize M_GRAPHIC_SOURCE_CALIBRATION

Specifies that the identifier of the camera calibration information, used to interpret positioning and dimensioning information of a graphic defined in world units, was modified.

Click to summarize M_INPUT_UNITS

Specifies that the unit with which to interpret the graphic's positional and dimensional information, for graphics already added to the 2D graphics list, was modified. INFO

Click to summarize M_INTERACTIVE_ANNOTATIONS_COLOR

Specifies that the color of the selection box and handles in interactive mode was modified.

Click to summarize M_MODE_RESIZE

Specifies that the interactive behavior, when resizing the graphic using its selection box, was modified. INFO

Click to summarize M_MODE_RESIZE_ALT

Specifies that the interactive behavior, when resizing the graphic using its selection box and pressing the Alt key, was modified. INFO

Click to summarize M_MODE_RESIZE_CTRL

Specifies that the interactive behavior, when resizing the graphic using its selection box and pressing the Ctrl key, was modified. INFO

Click to summarize M_MODE_RESIZE_SECONDARY_DIMENSION

Specifies that the option of whether to establish the graphic's secondary dimension, when defining the graphic interactively on the display, was modified. INFO

Click to summarize M_MODE_RESIZE_SECONDARY_DIMENSION_ALT

Specifies that the option of whether to establish the graphic's secondary dimension, when defining the graphic interactively on the display and pressing the Alt key, was modified. INFO

Click to summarize M_MODE_RESIZE_SECONDARY_DIMENSION_CTRL

Specifies that the option of whether to establish the graphic's secondary dimension, when defining the graphic interactively on the display and pressing the Ctrl key, was modified. INFO

Click to summarize M_MODE_RESIZE_SECONDARY_DIMENSION_SHIFT

Specifies that the option of whether to establish the graphic's secondary dimension, when defining the graphic interactively on the display and pressing the Shift key, was modified. INFO

Click to summarize M_MODE_RESIZE_SHIFT

Specifies that the interactive behavior, when resizing the graphic using its selection box and pressing the Shift key, was modified. INFO

Click to summarize M_MODE_ROTATE

Specifies that the interactive behavior, when rotating the graphic using its selection box, was modified. INFO

Click to summarize M_MODE_ROTATE_ALT

Specifies that the interactive behavior, when rotating the graphic using its selection box and pressing the Alt key, was modified. INFO

Click to summarize M_MODE_ROTATE_CTRL

Specifies that the interactive behavior, when rotating the graphic using its selection box and pressing the Ctrl key, was modified. INFO

Click to summarize M_MODE_ROTATE_SHIFT

Specifies that the interactive behavior, when rotating the graphic using its selection box and pressing the Shift key, was modified. INFO

Click to summarize M_MODE_TRANSLATE

Specifies that the interactive behavior, when moving (translating) the graphic using its selection box, was modified. INFO

Click to summarize M_MODE_TRANSLATE_ALT

Specifies that the interactive behavior, when moving (translating) the graphic using its selection box and pressing the Alt key, was modified. INFO

Click to summarize M_MODE_TRANSLATE_CTRL

Specifies that the interactive behavior, when moving (translating) the graphic using its selection box and pressing the Ctrl key, was modified. INFO

Click to summarize M_MODE_TRANSLATE_SHIFT

Specifies that the interactive behavior, when moving (translating) the graphic using its selection box and pressing the Shift key, was modified. INFO

Click to summarize M_MOVE

Specifies that a call to MgraCopy(), with an in-place move (M_MOVE) operation, changed the order of the graphics inside the 2D graphics list.

Click to summarize M_MULTIPLE_SELECTION

Specifies that the option of whether to permit interactive multiple selection using the Ctrl key was modified.

Click to summarize M_MULTIPLE_SELECTION_KEY

Specifies that the keyboard key that you can press to select multiple graphics with your mouse on the display was modified.

Click to summarize M_POSITION_TYPE +

Specifies that how M_POSITION_X and M_POSITION_Y are interpreted for a rectangle was modified. INFO

Click to summarize M_POSITION_X

Specifies that the X-position of a graphic, or of one of its sub-elements (position-points), was modified. INFO

Click to summarize M_POSITION_Y

Specifies that the Y-position of a graphic, or of one of its sub-elements (position-points), was modified. INFO

Click to summarize M_RADIUS_X

Specifies that the radius of the arc in the X-direction was modified. INFO

Click to summarize M_RADIUS_Y

Specifies that the radius of the arc in the Y-direction was modified. INFO

Click to summarize M_RECTANGLE_HEIGHT

Specifies that the height of the rectangle was modified. INFO

Click to summarize M_RECTANGLE_WIDTH

Specifies that the width of the rectangle was modified. INFO

Click to summarize M_RESIZABLE

Specifies that the option of whether a graphic can be resized, via user interaction in an interactive display, was modified. INFO

Click to summarize M_RESIZE_HEIGHT

Specifies that the graphic's height was increased or decreased.

Click to summarize M_RESIZE_WIDTH

Specifies that the graphic's width was increased or decreased.

Click to summarize M_ROTATABLE

Specifies that the option of whether a graphic can be rotated, via user interaction in an interactive display, was modified. INFO

Click to summarize M_ROTATE

Specifies that a rotation operation was performed on the graphic, or one of its sub-elements.

Click to summarize M_SELECTABLE

Specifies that the option of whether a graphic can be selected, via user interaction in an interactive display, was modified. INFO

Click to summarize M_SELECTED_COLOR

Specifies that the color of the selected graphics in interactive mode was modified.

Click to summarize M_SELECTION_RADIUS

Specifies that the size of the selection-radius in interactive mode was modified. INFO

Click to summarize M_SPECIFIC_FEATURES_EDITABLE

Specifies that the option of whether a graphic can be modified, using handles that are specific to its graphic type via user interaction in an interactive display, was modified. INFO

Click to summarize M_TEXT_ALIGN_HORIZONTAL

Specifies that the horizontal alignment of the text was modified. INFO

Click to summarize M_TEXT_ALIGN_VERTICAL

Specifies that the vertical alignment of the text was modified. INFO

Click to summarize M_TEXT_BORDER

Specifies that the border drawn around the text was modified. INFO

Click to summarize M_TEXT_DIRECTION

Specifies that the direction to draw the text, when using a TrueType font, was modified.

Click to summarize M_TRANSLATABLE

Specifies that the option of whether a graphic can be translated (moved), via user interaction in an interactive display, was modified. INFO

Click to summarize M_TRANSLATE_X

Specifies that a horizontal translation of a graphic, or of one of its sub-elements, was performed. INFO

Click to summarize M_TRANSLATE_Y

Specifies that a vertical translation of a graphic, or of one of its sub-elements, was performed. INFO

Click to summarize M_VISIBLE

Specifies that the option of whether a graphic is rendered on the display was modified. INFO

Click to summarize M_GRAPHIC_LABEL_VALUE +

Retrieves the label of the modified graphic that triggered the event.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_INT
Click to summarize M_ALL

Specifies that all graphics in the 2D graphics list were modified using MgraClear() or MgraControlList() with M_ALL.

Click to summarize M_ALL_SELECTED

Specifies that all selected graphics in the 2D graphics list were modified using MgraControlList() with M_ALL_SELECTED.

Click to summarize M_LIST

Specifies that a 2D graphics list's setting was modified using MgraControlList() with M_LIST.

Click to summarize M_MULTIPLE_LABELS

Specifies that more than one graphic was modified. This can happen when calling MgraCopy() and with interactive manipulations (for example, translating many graphics).

(summarize)
Click to summarize Value

Specifies the label of the graphic.

Click to summarize M_GRAPHIC_LIST_ID +

Retrieves the MIL identifier of the 2D graphics list containing the graphic that triggered the event.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_ID
Click to summarize M_GRAPHIC_SUB_INDEX +

Retrieves the index of the sub-element of the graphic that triggered the event.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_INT
Click to summarize M_DEFAULT

Specifies that the event affected the whole graphic.

Click to summarize Value

Specifies the index of the sub-element of the graphic that triggered the event.

Click to summarize An M_GRAPHIC_SELECTION_MODIFIED event ID +

Specifies that the event that called the hook-handler function was due to a graphic being selected or deselected.

(summarize)
Click to summarize M_GRAPHIC_LABEL_VALUE +

Retrieves the label of the graphic that triggered the event.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_INT
Click to summarize M_MULTIPLE_LABELS

Specifies that more than one graphic was selected. This can happen when calling MgraControlList() with M_GRAPHIC_SELECTED and with interactive manipulations (for example, Ctrl-clicking many graphics).

(summarize)
Click to summarize M_NO_LABEL

Specifies a deselection triggered the event and no graphic was selected.

Click to summarize Value

Specifies the label of the graphic that was selected.

Click to summarize M_GRAPHIC_LABEL_VALUE_DESELECTED +

Retrieves the label of the graphic that was deselected when the event was triggered.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_INT
Click to summarize M_MULTIPLE_LABELS

Specifies that more than one graphic was deselected.

Click to summarize M_NO_LABEL

Specifies that no graphic was deselected.

Click to summarize Value

Specifies the label of the graphic that was deselected.

Click to summarize M_GRAPHIC_LIST_ID +

Retrieves the MIL identifier of the 2D graphics list containing the graphic that triggered the event.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_ID
Click to summarize An M_INTERACTIVE_GRAPHIC_STATE_MODIFIED event
ID
+

Specifies that the event that called the hook-handler function was due to the 2D graphics list's interactive state being modified, either by a MIL function or by interactive manipulations.

(summarize)
Click to summarize M_GRAPHIC_LABEL_VALUE +

Retrieves the label of the graphic that triggered the event. For example, it can return the label of the graphic being dragged when the state of interactivity (M_INTERACTIVE_GRAPHIC_STATE) is M_STATE_GRAPHIC_DRAGGED.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_INT
Click to summarize M_NO_LABEL

Specifies that a MIL function triggered the event.

Click to summarize Value

Specifies the label of the graphic that triggered the event.

Click to summarize M_GRAPHIC_LIST_ID +

Retrieves the MIL identifier of the 2D graphics list that triggered the event.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_ID
Click to summarize M_INTERACTIVE_GRAPHIC_PREVIOUS_STATE +

Inquires the state of interactivity of the 2D graphics list before the event occurred. This always returns a different value than M_INTERACTIVE_GRAPHIC_STATE.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_INT
Click to summarize M_STATE_BEING_CREATED

Specifies that a new graphic was being created.

Click to summarize M_STATE_GRAPHIC_DRAGGED

Specifies that a graphic was being dragged using the mouse.

Click to summarize M_STATE_GRAPHIC_HOVERED

Specifies that the cursor was hovering over a graphic.

Click to summarize M_STATE_HANDLE_DRAGGED

Specifies that a graphic's handle was being dragged using the mouse.

Click to summarize M_STATE_HANDLE_HOVERED

Specifies that the cursor was hovering over a graphic's handle.

Click to summarize M_STATE_IDLE

Specifies that the cursor was not hovering over anything and that no graphic was queued for creation.

Click to summarize M_STATE_WAITING_FOR_CREATION

Specifies that a graphic was queued for creation.

Click to summarize M_INTERACTIVE_GRAPHIC_STATE +

Inquires the current state of interactivity of the 2D graphics list.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_INT
Click to summarize M_STATE_BEING_CREATED

Specifies that a new graphic is being created.

Click to summarize M_STATE_GRAPHIC_DRAGGED

Specifies that a graphic is being dragged using the mouse.

Click to summarize M_STATE_GRAPHIC_HOVERED

Specifies that the cursor is currently hovering over a graphic.

Click to summarize M_STATE_HANDLE_DRAGGED

Specifies that a graphic's handle is being dragged using the mouse.

Click to summarize M_STATE_HANDLE_HOVERED

Specifies that the cursor is currently hovering over a graphic's handle.

Click to summarize M_STATE_IDLE

Specifies that the cursor is not hovering over anything and that no graphic is queued for creation.

Click to summarize M_STATE_WAITING_FOR_CREATION

Specifies that a graphic is queued for creation.

Combination value for M_POSITION_TYPE (when EventId=An M_GRAPHIC_MODIFIED event ID, and InfoType=M_GRAPHIC_CONTROL_TYPE, and UserVarPtr=M_POSITION_TYPE).

The following value might be combined with the above-mentioned value to specify that a rectangle's location in the image will not change, regardless of how MIL interprets its reference position.

function map Returns whether a rectangle's location in the image will not change
Click to summarizeCombination value Description
Click to summarize M_SAME_LOCATION

Specifies that, when you set M_POSITION_TYPE, MIL also adjusts the rectangle's actual position in the image so it remains at the same location.

Combination values for the values listed in For getting information about a 2D graphics list event.

You can add one of the following values to the above-mentioned values to cast the requested information to a required data type.

function map For specifying the data type
Click to summarizeEventId Description
InfoType
UserVarPtr
- Possible values returned
Click to summarize M_TYPE_MIL_DOUBLE

Casts the requested information to a MIL_DOUBLE.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE
Click to summarize M_TYPE_MIL_ID

Casts the requested information to a MIL_ID. Note that M_TYPE_MIL_ID should only be used with M_GRAPHIC_LIST_ID.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_ID
Click to summarize M_TYPE_MIL_INT

Casts the requested information to a MIL_INT.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_INT
Click to summarize M_TYPE_MIL_INT32

Casts the requested information to a MIL_INT32.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_INT32
Click to summarize M_TYPE_MIL_INT64

Casts the requested information to a MIL_INT64.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_INT64
Return value
The returned value is M_NULL if successful. If the operation fails, a non-null (!M_NULL) value is returned.
Compilation information
Header Include mil.h.
Library Use mil.lib.
DLL Requires mil.dll.
GRAPHIC LIST MODIFIED event ID GRAPHIC LIST ID GRAPHIC MODIFIED event ID GRAPHIC CONTROL TYPE ANGLE ANGLE END ANGLE SNAPPING VALUE ANGLE START APPLY SCALE ARC STYLE BACKCOLOR BACKGROUND MODE COLOR CONSTRAIN ASPECT RATIO DELETE DRAW DIRECTION DRAW OFFSET X DRAW OFFSET Y DRAW ZOOM X DRAW ZOOM Y EASY SELECTION EDITABLE FILLED FIXTURE FONT FONT AUTO SELECT FONT SIZE FONT X SCALE FONT Y SCALE GRAPHIC CONVERSION MODE GRAPHIC CREATE GRAPHIC INTERACTIVE GRAPHIC SOURCE CALIBRATION INPUT UNITS INTERACTIVE ANNOTATIONS COLOR MODE RESIZE MODE RESIZE ALT MODE RESIZE CTRL MODE RESIZE SECONDARY DIMENSION MODE RESIZE SECONDARY DIMENSION ALT MODE RESIZE SECONDARY DIMENSION CTRL MODE RESIZE SECONDARY DIMENSION SHIFT MODE RESIZE SHIFT MODE ROTATE MODE ROTATE ALT MODE ROTATE CTRL MODE ROTATE SHIFT MODE TRANSLATE MODE TRANSLATE ALT MODE TRANSLATE CTRL MODE TRANSLATE SHIFT MOVE MULTIPLE SELECTION MULTIPLE SELECTION KEY POSITION TYPE POSITION X POSITION Y RADIUS X RADIUS Y RECTANGLE HEIGHT RECTANGLE WIDTH RESIZABLE RESIZE HEIGHT RESIZE WIDTH ROTATABLE ROTATE SELECTABLE SELECTED COLOR SELECTION RADIUS SPECIFIC FEATURES EDITABLE TEXT ALIGN HORIZONTAL TEXT ALIGN VERTICAL TEXT BORDER TEXT DIRECTION TRANSLATABLE TRANSLATE X TRANSLATE Y VISIBLE GRAPHIC LABEL VALUE ALL ALL SELECTED LIST MULTIPLE LABELS GRAPHIC LIST ID GRAPHIC SUB INDEX DEFAULT GRAPHIC SELECTION MODIFIED event ID GRAPHIC LABEL VALUE MULTIPLE LABELS NO LABEL GRAPHIC LABEL VALUE DESELECTED MULTIPLE LABELS NO LABEL GRAPHIC LIST ID INTERACTIVE GRAPHIC STATE MODIFIED event ID GRAPHIC LABEL VALUE NO LABEL GRAPHIC LIST ID INTERACTIVE GRAPHIC PREVIOUS STATE STATE BEING CREATED STATE GRAPHIC DRAGGED STATE GRAPHIC HOVERED STATE HANDLE DRAGGED STATE HANDLE HOVERED STATE IDLE STATE WAITING FOR CREATION INTERACTIVE GRAPHIC STATE STATE BEING CREATED STATE GRAPHIC DRAGGED STATE GRAPHIC HOVERED STATE HANDLE DRAGGED STATE HANDLE HOVERED STATE IDLE STATE WAITING FOR CREATION SAME LOCATION TYPE MIL DOUBLE TYPE MIL ID TYPE MIL INT TYPE MIL INT32 TYPE MIL INT64