Joan (discussió | contribucions)
Joan (discussió | contribucions)
Línia 30: Línia 30:
=== TAGS ===
=== TAGS ===


Codificación a JSON de los datos:
La información se codifica como un objeto. Donde el nombre del tag es la clave y el contenido de este el valor.
Todos los tags se codifican como
==== TAGS GENERIC INFO ====
==== TAGS GENERIC INFO ====
<pre>
<pre>


*Software:ASCIIstring
*Software string
Nombre del programa que ha generado el fichero .DRF
Nombre del programa que ha generado el fichero .DRF


*DrawName
*DrawName string
Type:ASCIIString
N:1
Campo editable por el diseñador el nombre del dibujo.
Campo editable por el diseñador el nombre del dibujo.


*Company
*Company string
Type:ASCIIString
N:1
Compañia que ha creado el dibujo.
Compañia que ha creado el dibujo.


Línia 51: Línia 51:
<pre>
<pre>


*Machine
*Machine string
Type:ASCIIString
N:1
Campo editable por el diseñador que contiene el nombre, descripción o referencia de la maquina.  
Campo editable por el diseñador que contiene el nombre, descripción o referencia de la maquina.  


*MachineType
*MachineType string
Type:ASCIIString
Nombre del modelo de la maquina. Solo puede contener un nombre de maquina de los que tiene definidos el carta.
N:1
Nombre exacto del modelo de la maquina.


*Description
*Description string
Type:ASCIIString
Descripción del dibujo introducida por el diseñador.
N:1
Campo editable per el diseñador.


*Serial
*Serial string
Type:ASCIIString
Código de serie del dibujo asignado por el diseñador. Puede contener cualquier secuencia de caracteres imprimibles ASCII.
N:1


*Version int32
Versión del formato de DRF con el que se ha guardado el archivo.


*Version
*Jacquard int32
Type:int32
Número de barras de Jacquard independientes. Solo se soporta hasta un máximo de 2 barras.  
N:1
Versión del formato de DRF con el que se ha guardado el archivo.


*Jacquard
*BarsRepeat int32
Type:int32
N:1


*BarsRepeat
Type:int32
N:1


*NumRepeats
*NumRepeats int32
Type:int32
N:1


*NumBars
*NumBars int32
Type:int32
Numero de barras que tiene el telar
Numero de barras que tiene el telar


*Plate
*Plate int32
Type:int32
N:1
N:1


*JacqNeedles
*JacqNeedles int32
Type:int32
Numero de agujas de Jacquard del telar
N:1
Numero total de agujas de Jacquard del telar


*MachNeedles
*MachNeedles int32
Type:int32
N:1
Numero total de agujas del telar  
Numero total de agujas del telar  


*BarsOffset
*BarsOffset int32
Type:int32
N:1
Desplazamiento respecto a la primera aguja
Desplazamiento respecto a la primera aguja


*JacqOffset
*JacqOffset int32
Type:int32
 
N:1
*MaxDisp int32


*MaxDisp
*Proximity int32
Type:int32
N:1


*Proximity
Type:int32
N:1


*JacqRt
*JacqRt int32
Type:int32
N:1


*FinalGauge
*FinalGauge
Línia 151: Línia 122:
N:1
N:1


*BarName ASCIIString(NumBars)
*BarName string(NumBars)
 
Nombre de cada una de las barras del telar


*BarNumBar int32(NumBars)
*BarNumBar int32(NumBars)
Numero de cada una de las barras del telar


*BarGroup
*BarGroup int32(NumBars)
Type:
N:NumBars


*BarStop
*BarStop int32(NumBars)
Type:
N:NumBars


*BarUtil
*BarUtil int32(NumBars)
Type:
N:NumBars


*BarType
*BarType int32(NumBars)
Type:
N:NumBars


*BarMaxGimp
*BarMaxGimp  
Type:
N:NumBars


*BarDrive
*BarDrive
Type:
N:NumBars


*BarFactor
*BarFactor
Type:
N:NumBars


*BarInvert
*BarInvert
Type:
N:NumBars


*BarWork
*BarWork
Type:
N:NumBars


*BarKnit
*BarKnit
Type:
N:NumBars


*BarTimes
*BarTimes
Type:
N:NumBars


*BarMode
*BarMode
Type:
N:NumBars


*BarModif
*BarModif
Type:
N:NumBars


*BarRepeat
*BarRepeat
Type:
N:NumBars


*BarTension
*BarTension
Type:
N:NumBars


*BarNumFingers
*BarNumFingers int32(NumBars)
Type:
numero de pasadores de la barra
N:NumBars


*BarModeDrop
*BarModeDrop
Type:
N:NumBars


*BarMaxDesp
*BarMaxDesp
Type:
N:NumBars


*BarActive
*BarActive
Type:
N:NumBars


*BarHalvesUp
*BarHalvesUp
Type:
N:NumBars


*BarHalvesDn
*BarHalvesDn
Type:
N:NumBars


*BarString
*BarString
Type:
N:NumBars


*BarFronture
*BarFronture NumBars
Type:
N:NumBars


*BarDropsUtil int32(7*NumBars)
*BarDropsUtil int32(7*NumBars)


*BarHalves
*FingerStop int32(num_fingers) num_fingers=BarNumFingers(0) + ... + BarNumFingers(NumBars-1)
*BarNeedle
Stop del pasador relativo al stop de la barra.
*BarKnitting
*BarNeedleB
*BarKnitting


*FingerStop int32(num_fingers) num_fingers=BarNumFingers[0] + ... + BarNumFingers[NumBars-1]
*FingerType int32(num_fingers) num_fingers=BarNumFingers(0) + ... + BarNumFingers(NumBars-1)
Tipo de pasador.


*FingerType int32(num_fingers) num_fingers=BarNumFingers[0] + ... + BarNumFingers[NumBars-1]
*CGF1Card


*CGF1Type


*CGF1Card
*CGF1Type
*CGF1Taille
*CGF1Taille
*CGF1Numlines
*CGF1Numlines
*CGF1Script
*CGF1Script
*CGF1Descrip
*CGF1Descrip


*CGF2Card
*CGF2Card
*CGF2Type
*CGF2Type
*CGF2Taille
*CGF2Taille
*CGF2Numlines
*CGF2Numlines
*CGF2Script
*CGF2Script
*CGF2Descrip
*CGF2Descrip


*CFBNGaits
*CFBNGaits
*CFBCard
*CFBCard
*CFBType
*CFBType
*CFBTaille
*CFBTaille
*CFBNumlines
*CFBNumlines
*CFBScript
*CFBScript
*CFBGaitNBar
*CFBGaitNBar
*CFBGaitNGait
*CFBGaitNGait
*CFBDescrip
*CFBDescrip
*CFBGaitNRepeat
*CFBGaitNRepeat


*JacqRtCourse
*JacqRtCourse
*Fronture
*Fronture


Línia 296: Línia 238:
*NumCourses int32
*NumCourses int32
Numero de pasadas guardadas del dibujo.
Numero de pasadas guardadas del dibujo.
*BarHalves int32(NumCourses)
*BarNeedle int32(NumCourses)
*BarKnitting int32(NumCourses)
*BarNeedleB int32(NumCourses)
*BarKnittingB int32(NumCourses)


*Layout_FrontureData
*Layout_FrontureData
*Layout_WBData
*Layout_WBData
*Layout_JacqData


*Layout_JacqData bit(NumCourses*JacqNeedles*Jacquard)
Bits de Jacquard.
*LayoutCourNRepeats int32
Numero de repeticiones
*LayoutCourNLayouts int32
Numero de bloques a repetir
*LayoutCourRepeat int32(LayoutCourNLayouts)
Numero de pasadas de cada bloque a repetir
*LayoutCourWhich int32(LayoutCourNRepeats)
indice del bloque que a repetir
*LayoutCourTimes int32(LayoutCourNRepeats)
numero de veces que se ha de repetir el bloque. Ejemplo:
Supongamos el dibujo:
AAAAAAAAA
H * * * * H
H * * * * H
H * * * * H
H * .-. * H
H  ( * )  H
H * '-' * H
H * * * * H
H * * * * H
H * .-. * H
H  ( * )  H
H * '-' * H
H * * * * H
H * * * * H
VVVVVVVVV
*LayoutJacqNRepeats int32
*LayoutJacqNLayouts int32
*LayoutJacqRepeat int32(LayoutJacqNLayouts)


*LayoutCourNRepeats
*LayoutJacqWhich int32(LayoutJacqNRepeats)
*LayoutCourNLayouts
*LayoutCourRepeat
*LayoutCourWhich
*LayoutCourTimes


*LayoutJacqNRepeats
*LayoutJacqTimes int32(LayoutJacqNRepeats)
*LayoutJacqNLayouts
*LayoutJacqRepeat
*LayoutJacqWhich
*LayoutJacqTimes


</pre>
</pre>

Revisió del 09:41, 3 oct 2016


DLL_EXPORTS


void drf_clear_errors()
Descr:Borra todos los mensajes de error del almacenamiento interno de la librería dinámica.

int drf_get_num_errors();
Descr:Obtiene el numero de mensajes de error del almacenados por la librería dinámica.
Return:numero de mensajes almacenados.

const char* drf_get_error(int idx)
Descr:obtiene el mensajes de error indicado por idx.
p:idx: Numero de mensaje a obtener.Comprendido ente 0 y (drf_get_num_messages()-1) ambos incluidos.
Return: un puntero a una cadena de caracteres ASCII terminada por el byte NUL ('\0'), o NULL en caso que 
el valor de idx este fuera de rango.

int drf_to_json(char *path,FILE *json,int options)
Descr:Serializa a JSON un dibujo DRF.
p:path: Ruta al fichero DRF a serializar en formato Windows ANSI.
p:json: puntero FILE ya abierto y con la escritura habilitada.
p:options: Selecciona que información se serializará. 0 para serializar toda la información disponible.
Return: 0 para indicar que la operación se ha completado correctamente. Diferente de 0 para indicar error.

TAGS

Codificación a JSON de los datos:

La información se codifica como un objeto. Donde el nombre del tag es la clave y el contenido de este el valor. Todos los tags se codifican como

TAGS GENERIC INFO


*Software string
Nombre del programa que ha generado el fichero .DRF

*DrawName string
Campo editable por el diseñador el nombre del dibujo.

*Company string
Compañia que ha creado el dibujo.

TAGS MACHINE INFO


*Machine string
Campo editable por el diseñador que contiene el nombre, descripción o referencia de la maquina. 

*MachineType string
Nombre del modelo de la maquina. Solo puede contener un nombre de maquina de los que tiene definidos el carta.

*Description string
Descripción del dibujo introducida por el diseñador.

*Serial string
Código de serie del dibujo asignado por el diseñador. Puede contener cualquier secuencia de caracteres imprimibles ASCII.

*Version int32
Versión del formato de DRF con el que se ha guardado el archivo.

*Jacquard int32
Número de barras de Jacquard independientes. Solo se soporta hasta un máximo de 2 barras. 

*BarsRepeat int32


*NumRepeats int32

*NumBars int32
Numero de barras que tiene el telar

*Plate int32
N:1

*JacqNeedles int32
Numero de agujas de Jacquard del telar

*MachNeedles int32
Numero total de agujas del telar 

*BarsOffset int32
Desplazamiento respecto a la primera aguja

*JacqOffset int32

*MaxDisp int32

*Proximity int32


*JacqRt int32

*FinalGauge
Type:float
N:1

*FinalQuality
Type:float
N:1

*RealGauge
Type:float
N:1

*RealQuality
Type:float
N:1

*Shrinkage
Type:float
N:1

*Elasticity
Type:float
N:1

*BarName string(NumBars)
Nombre de cada una de las barras del telar

*BarNumBar int32(NumBars)
Numero de cada una de las barras del telar

*BarGroup int32(NumBars)

*BarStop int32(NumBars)

*BarUtil int32(NumBars)

*BarType int32(NumBars)

*BarMaxGimp 

*BarDrive

*BarFactor

*BarInvert

*BarWork

*BarKnit

*BarTimes

*BarMode

*BarModif

*BarRepeat

*BarTension

*BarNumFingers int32(NumBars)
numero de pasadores de la barra

*BarModeDrop

*BarMaxDesp

*BarActive

*BarHalvesUp

*BarHalvesDn

*BarString

*BarFronture NumBars

*BarDropsUtil int32(7*NumBars)

*FingerStop int32(num_fingers) num_fingers=BarNumFingers(0) + ... + BarNumFingers(NumBars-1)
Stop del pasador relativo al stop de la barra.

*FingerType int32(num_fingers) num_fingers=BarNumFingers(0) + ... + BarNumFingers(NumBars-1)
Tipo de pasador.

*CGF1Card

*CGF1Type

*CGF1Taille

*CGF1Numlines

*CGF1Script

*CGF1Descrip

*CGF2Card

*CGF2Type

*CGF2Taille

*CGF2Numlines

*CGF2Script

*CGF2Descrip

*CFBNGaits

*CFBCard

*CFBType

*CFBTaille

*CFBNumlines

*CFBScript

*CFBGaitNBar

*CFBGaitNGait

*CFBDescrip

*CFBGaitNRepeat

*JacqRtCourse

*Fronture

TAGS DRAFT DATA


*NumCourses int32
Numero de pasadas guardadas del dibujo.

*BarHalves int32(NumCourses)

*BarNeedle int32(NumCourses)

*BarKnitting int32(NumCourses)

*BarNeedleB int32(NumCourses)

*BarKnittingB int32(NumCourses)

*Layout_FrontureData

*Layout_WBData

*Layout_JacqData bit(NumCourses*JacqNeedles*Jacquard)
Bits de Jacquard. 

*LayoutCourNRepeats int32
Numero de repeticiones

*LayoutCourNLayouts int32
Numero de bloques a repetir

*LayoutCourRepeat int32(LayoutCourNLayouts)
Numero de pasadas de cada bloque a repetir

*LayoutCourWhich int32(LayoutCourNRepeats)
indice del bloque que a repetir

*LayoutCourTimes int32(LayoutCourNRepeats)
numero de veces que se ha de repetir el bloque. Ejemplo:

Supongamos el dibujo:

 AAAAAAAAA
H * * * * H
H * * * * H
H * * * * H
H * .-. * H
H  ( * )  H
H * '-' * H
H * * * * H
H * * * * H
H * .-. * H
H  ( * )  H
H * '-' * H
H * * * * H
H * * * * H
 VVVVVVVVV



*LayoutJacqNRepeats int32

*LayoutJacqNLayouts int32

*LayoutJacqRepeat int32(LayoutJacqNLayouts)

*LayoutJacqWhich int32(LayoutJacqNRepeats)

*LayoutJacqTimes int32(LayoutJacqNRepeats)