Mercurial > hg > Papers > 2013 > nobuyasu-jssst
changeset 21:9dcb40e74ab9
added some figres
author | Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp> |
---|---|
date | Thu, 18 Jul 2013 18:33:33 +0900 |
parents | 04e41820d930 |
children | 4cc89b4cf3dd |
files | Paper/figures/alice_topology.xbb Paper/figures/destructive_tree.xbb Paper/figures/nodepath.xbb Paper/figures/non_destructive_tree.xbb Paper/figures/putLog.pdf Paper/figures/putLog.xbb Paper/graffle/putLog.graffle Paper/jssst.tex |
diffstat | 8 files changed, 532 insertions(+), 19 deletions(-) [+] |
line wrap: on
line diff
--- a/Paper/figures/alice_topology.xbb Thu Jul 18 17:33:39 2013 +0900 +++ b/Paper/figures/alice_topology.xbb Thu Jul 18 18:33:33 2013 +0900 @@ -4,5 +4,5 @@ %%HiResBoundingBox: 0.000000 0.000000 386.000000 218.000000 %%PDFVersion: 1.4 %%Pages: 1 -%%CreationDate: Thu Jul 18 14:26:34 2013 +%%CreationDate: Thu Jul 18 18:29:53 2013
--- a/Paper/figures/destructive_tree.xbb Thu Jul 18 17:33:39 2013 +0900 +++ b/Paper/figures/destructive_tree.xbb Thu Jul 18 18:33:33 2013 +0900 @@ -4,5 +4,5 @@ %%HiResBoundingBox: 0.000000 0.000000 404.000000 207.000000 %%PDFVersion: 1.4 %%Pages: 1 -%%CreationDate: Thu Jul 18 14:26:34 2013 +%%CreationDate: Thu Jul 18 18:29:53 2013
--- a/Paper/figures/nodepath.xbb Thu Jul 18 17:33:39 2013 +0900 +++ b/Paper/figures/nodepath.xbb Thu Jul 18 18:33:33 2013 +0900 @@ -4,5 +4,5 @@ %%HiResBoundingBox: 0.000000 0.000000 315.000000 310.000000 %%PDFVersion: 1.3 %%Pages: 1 -%%CreationDate: Thu Jul 18 14:26:34 2013 +%%CreationDate: Thu Jul 18 18:29:53 2013
--- a/Paper/figures/non_destructive_tree.xbb Thu Jul 18 17:33:39 2013 +0900 +++ b/Paper/figures/non_destructive_tree.xbb Thu Jul 18 18:33:33 2013 +0900 @@ -4,5 +4,5 @@ %%HiResBoundingBox: 0.000000 0.000000 459.000000 207.000000 %%PDFVersion: 1.4 %%Pages: 1 -%%CreationDate: Thu Jul 18 14:26:34 2013 +%%CreationDate: Thu Jul 18 18:29:53 2013
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Paper/figures/putLog.xbb Thu Jul 18 18:33:33 2013 +0900 @@ -0,0 +1,8 @@ +%%Title: ./putLog.pdf +%%Creator: extractbb 20130405 +%%BoundingBox: 0 0 385 147 +%%HiResBoundingBox: 0.000000 0.000000 385.000000 147.000000 +%%PDFVersion: 1.4 +%%Pages: 1 +%%CreationDate: Thu Jul 18 18:29:53 2013 +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Paper/graffle/putLog.graffle Thu Jul 18 18:33:33 2013 +0900 @@ -0,0 +1,491 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> +<plist version="1.0"> +<dict> + <key>ActiveLayerIndex</key> + <integer>0</integer> + <key>ApplicationVersion</key> + <array> + <string>com.omnigroup.OmniGraffle</string> + <string>139.18.0.187838</string> + </array> + <key>AutoAdjust</key> + <true/> + <key>BackgroundGraphic</key> + <dict> + <key>Bounds</key> + <string>{{0, 0}, {558.99997329711914, 783}}</string> + <key>Class</key> + <string>SolidGraphic</string> + <key>ID</key> + <integer>2</integer> + <key>Style</key> + <dict> + <key>shadow</key> + <dict> + <key>Draws</key> + <string>NO</string> + </dict> + <key>stroke</key> + <dict> + <key>Draws</key> + <string>NO</string> + </dict> + </dict> + </dict> + <key>BaseZoom</key> + <integer>0</integer> + <key>CanvasOrigin</key> + <string>{0, 0}</string> + <key>ColumnAlign</key> + <integer>1</integer> + <key>ColumnSpacing</key> + <real>36</real> + <key>CreationDate</key> + <string>2013-07-18 09:10:59 +0000</string> + <key>Creator</key> + <string>Oshiro Nobuyasu</string> + <key>DisplayScale</key> + <string>1 0/72 in = 1 0/72 in</string> + <key>GraphDocumentVersion</key> + <integer>8</integer> + <key>GraphicsList</key> + <array> + <dict> + <key>Bounds</key> + <string>{{289.00000381469727, 150.5}, {168, 38}}</string> + <key>Class</key> + <string>ShapedGraphic</string> + <key>ID</key> + <integer>1</integer> + <key>Shape</key> + <string>Rectangle</string> + <key>Text</key> + <dict> + <key>Text</key> + <string>{\rtf1\ansi\ansicpg1252\cocoartf1187\cocoasubrtf370 +\cocoascreenfonts1{\fonttbl\f0\fswiss\fcharset0 Helvetica;} +{\colortbl;\red255\green255\blue255;} +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc + +\f0\fs24 \cf0 LogUpdateCodeSegment}</string> + </dict> + </dict> + <dict> + <key>Class</key> + <string>LineGraphic</string> + <key>ID</key> + <integer>25</integer> + <key>Points</key> + <array> + <string>{233.00000381469727, 172.5}</string> + <string>{285.00000381469727, 172.5}</string> + </array> + <key>Style</key> + <dict> + <key>stroke</key> + <dict> + <key>HeadArrow</key> + <string>FilledArrow</string> + <key>Legacy</key> + <true/> + <key>LineType</key> + <integer>1</integer> + <key>TailArrow</key> + <string>0</string> + <key>Width</key> + <real>2</real> + </dict> + </dict> + </dict> + <dict> + <key>Bounds</key> + <string>{{102.00000381469727, 226}, {36, 14}}</string> + <key>Class</key> + <string>ShapedGraphic</string> + <key>ID</key> + <integer>23</integer> + <key>Shape</key> + <string>Rectangle</string> + <key>Style</key> + <dict> + <key>shadow</key> + <dict> + <key>Draws</key> + <string>NO</string> + </dict> + <key>stroke</key> + <dict> + <key>Draws</key> + <string>NO</string> + </dict> + </dict> + <key>Text</key> + <dict> + <key>Text</key> + <string>{\rtf1\ansi\ansicpg1252\cocoartf1187\cocoasubrtf370 +\cocoascreenfonts1{\fonttbl\f0\fswiss\fcharset0 Helvetica;} +{\colortbl;\red255\green255\blue255;} +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc + +\f0\fs36 \cf0 put}</string> + </dict> + </dict> + <dict> + <key>Class</key> + <string>LineGraphic</string> + <key>Head</key> + <dict> + <key>ID</key> + <integer>18</integer> + </dict> + <key>ID</key> + <integer>22</integer> + <key>Points</key> + <array> + <string>{130.36329139824284, 226}</string> + <string>{175.10328020274792, 195.77986771989319}</string> + </array> + <key>Style</key> + <dict> + <key>stroke</key> + <dict> + <key>HeadArrow</key> + <string>FilledArrow</string> + <key>Legacy</key> + <true/> + <key>LineType</key> + <integer>1</integer> + <key>TailArrow</key> + <string>0</string> + <key>Width</key> + <real>2</real> + </dict> + </dict> + <key>Tail</key> + <dict> + <key>ID</key> + <integer>23</integer> + </dict> + </dict> + <dict> + <key>Class</key> + <string>LineGraphic</string> + <key>ID</key> + <integer>21</integer> + <key>Points</key> + <array> + <string>{119.32718502275097, 202}</string> + <string>{235.67282260664354, 202}</string> + </array> + <key>Style</key> + <dict> + <key>stroke</key> + <dict> + <key>HeadArrow</key> + <string>0</string> + <key>Legacy</key> + <true/> + <key>LineType</key> + <integer>1</integer> + <key>TailArrow</key> + <string>0</string> + </dict> + </dict> + </dict> + <dict> + <key>Class</key> + <string>LineGraphic</string> + <key>ID</key> + <integer>20</integer> + <key>Points</key> + <array> + <string>{119.32718502275097, 143}</string> + <string>{235.67282260664354, 143}</string> + </array> + <key>Style</key> + <dict> + <key>stroke</key> + <dict> + <key>HeadArrow</key> + <string>0</string> + <key>Legacy</key> + <true/> + <key>LineType</key> + <integer>1</integer> + <key>TailArrow</key> + <string>0</string> + </dict> + </dict> + </dict> + <dict> + <key>Class</key> + <string>Group</string> + <key>Graphics</key> + <array> + <dict> + <key>Bounds</key> + <string>{{167.00000381469727, 165.1280327360754}, {62, 30.371967263924684}}</string> + <key>Class</key> + <string>ShapedGraphic</string> + <key>ID</key> + <integer>18</integer> + <key>Shape</key> + <string>Rectangle</string> + <key>Text</key> + <dict> + <key>Text</key> + <string>{\rtf1\ansi\ansicpg1252\cocoartf1187\cocoasubrtf370 +\cocoascreenfonts1{\fonttbl\f0\fswiss\fcharset0 Helvetica;} +{\colortbl;\red255\green255\blue255;} +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc + +\f0\fs24 \cf0 log}</string> + </dict> + </dict> + <dict> + <key>Bounds</key> + <string>{{167.00000381469727, 150.5}, {62, 14.628032736075321}}</string> + <key>Class</key> + <string>ShapedGraphic</string> + <key>ID</key> + <integer>19</integer> + <key>Shape</key> + <string>Rectangle</string> + <key>Text</key> + <dict> + <key>Text</key> + <string>{\rtf1\ansi\ansicpg1252\cocoartf1187\cocoasubrtf370 +\cocoascreenfonts1{\fonttbl\f0\fswiss\fcharset0 Helvetica;} +{\colortbl;\red255\green255\blue255;} +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc + +\f0\fs24 \cf0 1}</string> + </dict> + </dict> + </array> + <key>ID</key> + <integer>17</integer> + </dict> + <dict> + <key>Class</key> + <string>Group</string> + <key>Graphics</key> + <array> + <dict> + <key>Bounds</key> + <string>{{125.00000381469727, 125.12328349074272}, {104, 16.876712328767123}}</string> + <key>Class</key> + <string>ShapedGraphic</string> + <key>ID</key> + <integer>10</integer> + <key>Shape</key> + <string>Rectangle</string> + <key>Style</key> + <dict> + <key>fill</key> + <dict> + <key>Draws</key> + <string>NO</string> + </dict> + <key>shadow</key> + <dict> + <key>Draws</key> + <string>NO</string> + </dict> + <key>stroke</key> + <dict> + <key>Draws</key> + <string>NO</string> + </dict> + </dict> + <key>Text</key> + <dict> + <key>Text</key> + <string>{\rtf1\ansi\ansicpg1252\cocoartf1187\cocoasubrtf370 +\cocoascreenfonts1{\fonttbl\f0\fswiss\fcharset0 Helvetica;} +{\colortbl;\red255\green255\blue255;} +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc + +\f0\fs24 \cf0 "parent", "log"}</string> + </dict> + </dict> + <dict> + <key>Bounds</key> + <string>{{114.00000381469729, 120}, {126.99999999999994, 88.000000000000028}}</string> + <key>Class</key> + <string>ShapedGraphic</string> + <key>ID</key> + <integer>11</integer> + <key>Shape</key> + <string>Rectangle</string> + <key>Style</key> + <dict> + <key>stroke</key> + <dict> + <key>CornerRadius</key> + <real>9</real> + </dict> + </dict> + </dict> + </array> + <key>ID</key> + <integer>9</integer> + </dict> + </array> + <key>GridInfo</key> + <dict/> + <key>GuidesLocked</key> + <string>NO</string> + <key>GuidesVisible</key> + <string>YES</string> + <key>HPages</key> + <integer>1</integer> + <key>ImageCounter</key> + <integer>1</integer> + <key>KeepToScale</key> + <false/> + <key>Layers</key> + <array> + <dict> + <key>Lock</key> + <string>NO</string> + <key>Name</key> + <string>Layer 1</string> + <key>Print</key> + <string>YES</string> + <key>View</key> + <string>YES</string> + </dict> + </array> + <key>LayoutInfo</key> + <dict> + <key>Animate</key> + <string>NO</string> + <key>circoMinDist</key> + <real>18</real> + <key>circoSeparation</key> + <real>0.0</real> + <key>layoutEngine</key> + <string>dot</string> + <key>neatoSeparation</key> + <real>0.0</real> + <key>twopiSeparation</key> + <real>0.0</real> + </dict> + <key>LinksVisible</key> + <string>NO</string> + <key>MagnetsVisible</key> + <string>NO</string> + <key>MasterSheets</key> + <array/> + <key>ModificationDate</key> + <string>2013-07-18 09:30:14 +0000</string> + <key>Modifier</key> + <string>Oshiro Nobuyasu</string> + <key>NotesVisible</key> + <string>NO</string> + <key>Orientation</key> + <integer>2</integer> + <key>OriginVisible</key> + <string>NO</string> + <key>PageBreaks</key> + <string>YES</string> + <key>PrintInfo</key> + <dict> + <key>NSBottomMargin</key> + <array> + <string>float</string> + <string>41</string> + </array> + <key>NSHorizonalPagination</key> + <array> + <string>coded</string> + <string>BAtzdHJlYW10eXBlZIHoA4QBQISEhAhOU051bWJlcgCEhAdOU1ZhbHVlAISECE5TT2JqZWN0AIWEASqEhAFxlwCG</string> + </array> + <key>NSLeftMargin</key> + <array> + <string>float</string> + <string>18</string> + </array> + <key>NSPaperSize</key> + <array> + <string>size</string> + <string>{594.99997329711914, 842}</string> + </array> + <key>NSPrintReverseOrientation</key> + <array> + <string>int</string> + <string>0</string> + </array> + <key>NSRightMargin</key> + <array> + <string>float</string> + <string>18</string> + </array> + <key>NSTopMargin</key> + <array> + <string>float</string> + <string>18</string> + </array> + </dict> + <key>PrintOnePage</key> + <false/> + <key>ReadOnly</key> + <string>NO</string> + <key>RowAlign</key> + <integer>1</integer> + <key>RowSpacing</key> + <real>36</real> + <key>SheetTitle</key> + <string>Canvas 1</string> + <key>SmartAlignmentGuidesActive</key> + <string>YES</string> + <key>SmartDistanceGuidesActive</key> + <string>YES</string> + <key>UniqueID</key> + <integer>1</integer> + <key>UseEntirePage</key> + <false/> + <key>VPages</key> + <integer>1</integer> + <key>WindowInfo</key> + <dict> + <key>CurrentSheet</key> + <integer>0</integer> + <key>ExpandedCanvases</key> + <array> + <dict> + <key>name</key> + <string>Canvas 1</string> + </dict> + </array> + <key>Frame</key> + <string>{{154, 91}, {693, 922}}</string> + <key>ListView</key> + <true/> + <key>OutlineWidth</key> + <integer>142</integer> + <key>RightSidebar</key> + <false/> + <key>ShowRuler</key> + <true/> + <key>Sidebar</key> + <true/> + <key>SidebarWidth</key> + <integer>120</integer> + <key>VisibleRegion</key> + <string>{{0, 0}, {558, 783}}</string> + <key>Zoom</key> + <real>1</real> + <key>ZoomValues</key> + <array> + <array> + <string>Canvas 1</string> + <real>1</real> + <real>1</real> + </array> + </array> + </dict> +</dict> +</plist>
--- a/Paper/jssst.tex Thu Jul 18 17:33:39 2013 +0900 +++ b/Paper/jssst.tex Thu Jul 18 18:33:33 2013 +0900 @@ -270,16 +270,19 @@ このクラスは TreeOperationLog を Value 型へと変換しフィールド変数で保持する. 実際に TreeOperationLog のシリアライズを行うソースを次に示す. -\begin{lstlisting}[label=operation_log, caption=TreeOperationLog のシリアライズ] +\begin{lstlisting}[label=unconvert, caption=TreeOperationLog のシリアライズ] public void unconvert(Iterable - <TreeOperation> _log) throws IOException { + <TreeOperation> _log) throws IOExceptio{ MessagePack msgpack = new MessagePack(); - List<Value> list = new LinkedList<Value>(); + List<Value> list + = new LinkedList<Value>(); for(TreeOperation op : _log) { - NodeOperation nOp = op.getNodeOperation(); - NodePath nodePath = op.getNodePath(); + NodeOperation nOp + = op.getNodeOperation(); + NodePath nPath + = op.getNodePath(); DefaultTreeOperation treeOp - = new DefaultTreeOperation(nodePath, nOp); + = new DefaultTreeOperation(nPath, nOp); DefaultTreeOperationContainer c = new DefaultTreeOperationContainer(); c.unconvert(treeOp); @@ -297,24 +300,35 @@ ノードの名前といった情報も保持するようにした. DefaultTreeOperationLogContainer により, TreeOperationLog を Data Segment へと put することができる. -\subsection{TreeOperationLog を扱う Data Segment} -Alice の各ノードは "log", "childLog" というキーで DefaultTreeOperationLogContiner を扱う(図\ref{fig:log}). +\subsection{ログを扱う Data Segment} +Alice の各ノードは "log", "childLog" というキーでログを扱う(図\ref{fig:topology}). + +\begin{figure}[htpb] + \begin{center} + \includegraphics[scale=0.50]{figures/alice_topology.pdf} + \caption{形成されるトポロジーと Data Segment} + \label{fig:topology} + \end{center} +\end{figure} "log" にはそのノードが行った木の編集のログが入る. 子供となるノードは親の "log" を待つ Code Segment を走らせており, ログが put されるとそのデータを受け取り 自身の変更へと適応を行う. +"parent" というキーを使うことで親ノードの Data Segment Manager にアクセスすることができる. + +\begin{figure}[htpb] + \begin{center} + \includegraphics[scale=0.50]{figures/putLog.pdf} + \caption{} + \label{fig:putlog} + \end{center} +\end{figure} + "childLog" には子供となるノードが行った編集のログが入れられる. Data Segment "childLog" にデータが入るの待っている Code Segment が常に走っており, 子供が行った木の編集は その Code Segment により親へと伝搬する. -\begin{figure}[htpb] - \begin{center} - \includegraphics[scale=0.50]{figures/alice_topology.pdf} - \caption{Data Segment による Log の記録} - \label{fig:log} - \end{center} -\end{figure} 親の "log" と, 子供により put される "childLog" にデータがいれられると, そのデータを元に データの編集を行う Code Segment が走りだす.