예제 #1
0
		/// <summary/>
		public MamaFieldDescriptor(
			int fid,
			mamaFieldType type,
			string name,
			bool trackModState) : base()
		{
			int code = NativeMethods.mamaFieldDescriptor_create(ref nativeHandle, fid, (int)type, name);
			CheckResultCode(code);
			this.mTrackModState = trackModState;
		}
        /// <summary/>
        public MamaFieldDescriptor(
            int fid,
            mamaFieldType type,
            string name,
            bool trackModState) : base()
        {
            int code = NativeMethods.mamaFieldDescriptor_create(ref nativeHandle, fid, (int)type, name);

            CheckResultCode(code);
            this.mTrackModState = trackModState;
        }
예제 #3
0
            /// <summary>
            /// Display the contents of a field in the console window.
            /// </summary>
            /// <param name="field">
            /// The field to display.
            /// </param>
            /// <param name="indent">
            /// The level of indent to add before the string for formatting purposes.
            /// </param>
            internal void displayField(MamaMsgField field, int indent)
            {
                // Format a log string
                string logMessage = "";

                string indentSpacer = "  ";

                for (int i = 0; i < indent; i++)
                {
                    indentSpacer += "  ";
                }

                if (m_quietness < 1)
                {
                    logMessage = string.Format(
                        "{0}{1, -20 } |{2,5} | {3, 10} | ",
                        indentSpacer,
                        field.getName(),
                        field.getFid(),
                        field.getTypeName());
                }

                mamaFieldType fieldType = field.getType();

                switch (fieldType)
                {
                case mamaFieldType.MAMA_FIELD_TYPE_MSG:
                {
                    MamaMsg tmpMsg = field.getMsg();
                    Console.WriteLine(logMessage);
                    Console.WriteLine(indentSpacer + "{");


                    if (!(m_iterator))
                    {
                        tmpMsg.iterateFields(this, m_dictionary, indent + 1);
                    }
                    else
                    {
                        MamaMsgIterator subIterator = new MamaMsgIterator(m_dictionary);
                        MamaMsgField    subField;
                        tmpMsg.begin(ref subIterator);
                        while ((subField = subIterator.getField()) != null)
                        {
                            displayField(subField, indent + 1);
                            subIterator++;
                        }
                    }
                    Console.WriteLine(indentSpacer + "}");
                }
                break;

                case mamaFieldType.MAMA_FIELD_TYPE_VECTOR_MSG:
                {
                    MamaMsg[] tmpMsgarray = field.getVectorMsg();
                    foreach (MamaMsg tmpMsg in tmpMsgarray)
                    {
                        Console.WriteLine(logMessage);
                        Console.WriteLine(indentSpacer + "{");
                        if (!(m_iterator))
                        {
                            tmpMsg.iterateFields(this, m_dictionary, indent + 1);
                        }
                        else
                        {
                            MamaMsgIterator subIterator = new MamaMsgIterator(m_dictionary);
                            MamaMsgField    subField;
                            tmpMsg.begin(ref subIterator);
                            while ((subField = subIterator.getField()) != null)
                            {
                                displayField(subField, indent + 1);
                                subIterator++;
                            }
                        }
                        Console.WriteLine(indentSpacer + "}");
                    }
                }
                break;

                case mamaFieldType.MAMA_FIELD_TYPE_STRING:
                    logMessage += field.getString();
                    break;

                case mamaFieldType.MAMA_FIELD_TYPE_BOOL:
                    if (m_quietness < 1)
                    {
                        logMessage += field.getBool().ToString();
                    }
                    else
                    {
                        logMessage += field.getBool();
                    }
                    break;

                case mamaFieldType.MAMA_FIELD_TYPE_CHAR:
                    if (m_quietness < 1)
                    {
                        logMessage += field.getChar().ToString();
                    }
                    else
                    {
                        logMessage += field.getChar();
                    }
                    break;

                case mamaFieldType.MAMA_FIELD_TYPE_I8:
                    if (m_quietness < 1)
                    {
                        logMessage += field.getI8().ToString();
                    }
                    else
                    {
                        logMessage += field.getI8();
                    }
                    break;

                case mamaFieldType.MAMA_FIELD_TYPE_U8:
                    if (m_quietness < 1)
                    {
                        logMessage += field.getU8().ToString();
                    }
                    else
                    {
                        logMessage += field.getU8();
                    }
                    break;

                case mamaFieldType.MAMA_FIELD_TYPE_I16:
                    if (m_quietness < 1)
                    {
                        logMessage += field.getI16().ToString();
                    }
                    else
                    {
                        logMessage += field.getI16();
                    }
                    break;

                case mamaFieldType.MAMA_FIELD_TYPE_U16:
                    if (m_quietness < 1)
                    {
                        logMessage += field.getU16().ToString();
                    }
                    else
                    {
                        logMessage += field.getU16();
                    }
                    break;

                case mamaFieldType.MAMA_FIELD_TYPE_I32:
                    if (m_quietness < 1)
                    {
                        logMessage += field.getI32().ToString();
                    }
                    else
                    {
                        logMessage += field.getI32();
                    }
                    break;

                case mamaFieldType.MAMA_FIELD_TYPE_U32:
                    if (m_quietness < 1)
                    {
                        logMessage += field.getU32().ToString();
                    }
                    else
                    {
                        logMessage += field.getU32();
                    }
                    break;

                case mamaFieldType.MAMA_FIELD_TYPE_I64:
                    if (m_quietness < 1)
                    {
                        logMessage += field.getI64().ToString();
                    }
                    else
                    {
                        logMessage += field.getI64();
                    }
                    break;

                case mamaFieldType.MAMA_FIELD_TYPE_U64:
                    if (m_quietness < 1)
                    {
                        logMessage += field.getU64().ToString();
                    }
                    else
                    {
                        logMessage += field.getU64();
                    }
                    break;

                case mamaFieldType.MAMA_FIELD_TYPE_F32:
                    if (m_quietness < 1)
                    {
                        logMessage += field.getF32().ToString();
                    }
                    else
                    {
                        logMessage += field.getF32();
                    }
                    break;

                case mamaFieldType.MAMA_FIELD_TYPE_F64:
                    if (m_quietness < 1)
                    {
                        logMessage += field.getF64().ToString();
                    }
                    else
                    {
                        logMessage += field.getF64();
                    }
                    break;

                case mamaFieldType.MAMA_FIELD_TYPE_TIME:
                    if (m_quietness < 1)
                    {
                        logMessage += field.getDateTime().ToString();
                    }
                    else
                    {
                        logMessage += field.getDateTime();
                    }
                    break;

                case mamaFieldType.MAMA_FIELD_TYPE_PRICE:
                    if (m_quietness < 1)
                    {
                        logMessage += field.getPrice().getAsString();
                    }
                    else
                    {
                        logMessage += field.getPrice();
                    }
                    break;

                default:

                    logMessage += field.getAsString();
                    break;
                }

                Console.WriteLine(logMessage);
            }
예제 #4
0
		/// <summary/>
		public MamaFieldDescriptor(
			int fid,
			mamaFieldType type,
			string name) : this(fid, type, name, false)
		{
		}
 /// <summary/>
 public MamaFieldDescriptor(
     int fid,
     mamaFieldType type,
     string name) : this(fid, type, name, false)
 {
 }