s4wave_layout_world

package
v0.52.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 2, 2026 License: Apache-2.0 Imports: 22 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// ObjectLayoutTypeID is the type identifier for a ObjectLayout.
	ObjectLayoutTypeID = "alpha/object-layout"
	// ObjectLayoutComponentID is the component identifier for displaying an ObjectLayout.
	ObjectLayoutComponentID = "alpha/object-layout"
)

Variables

View Source
var ErrEngineRequired = errors.New("engine is required for layout object type")

ErrEngineRequired is returned when the layout factory requires an Engine but it is nil.

ObjectLayoutType is the ObjectType for ObjectLayout objects.

Functions

func LookupObjectLayoutType

func LookupObjectLayoutType(ctx context.Context, typeID string) (objecttype.ObjectType, error)

LookupObjectLayoutType looks up the ObjectLayout type by ID. Returns nil if the typeID does not match ObjectLayout.

func NewObjectLayoutBlock

func NewObjectLayoutBlock() block.Block

NewObjectLayoutBlock constructs a new ObjectLayout block.

func ObjectLayoutFactory

func ObjectLayoutFactory(
	ctx context.Context,
	le *logrus.Entry,
	b bus.Bus,
	engine world.Engine,
	ws world.WorldState,
	objectKey string,
) (srpc.Invoker, func(), error)

ObjectLayoutFactory creates a LayoutResource from an ObjectLayout world object.

objectKey is the key of the layout object. ws is the WorldState for reading initial state (required). engine is the Engine for creating write transactions (required for setLayout).

func ValidateObjectLayoutTabDef

func ValidateObjectLayoutTabDef(m *s4wave_layout.TabDef) error

ValidateObjectLayoutTabDef checks an ObjectLayout TabDef.

Types

type CreateObjectLayoutOp

type CreateObjectLayoutOp struct {

	// ObjectLayoutKey is the object key for the ObjectLayout.
	ObjectLayoutKey string `protobuf:"bytes,1,opt,name=object_layout_key,json=objectLayoutKey,proto3" json:"objectLayoutKey,omitempty"`
	// contains filtered or unexported fields
}

CreateObjectLayoutOp creates an ObjectLayout. The layout must not already exist. The object key must have the required prefix.

func (*CreateObjectLayoutOp) CloneMessageVT

func (*CreateObjectLayoutOp) CloneVT

func (*CreateObjectLayoutOp) EqualMessageVT

func (this *CreateObjectLayoutOp) EqualMessageVT(thatMsg any) bool

func (*CreateObjectLayoutOp) EqualVT

func (this *CreateObjectLayoutOp) EqualVT(that *CreateObjectLayoutOp) bool

func (*CreateObjectLayoutOp) GetObjectLayoutKey

func (x *CreateObjectLayoutOp) GetObjectLayoutKey() string

func (*CreateObjectLayoutOp) MarshalJSON

func (x *CreateObjectLayoutOp) MarshalJSON() ([]byte, error)

MarshalJSON marshals the CreateObjectLayoutOp to JSON.

func (*CreateObjectLayoutOp) MarshalProtoJSON

func (x *CreateObjectLayoutOp) MarshalProtoJSON(s *json.MarshalState)

MarshalProtoJSON marshals the CreateObjectLayoutOp message to JSON.

func (*CreateObjectLayoutOp) MarshalProtoText

func (x *CreateObjectLayoutOp) MarshalProtoText() string

func (*CreateObjectLayoutOp) MarshalToSizedBufferVT

func (m *CreateObjectLayoutOp) MarshalToSizedBufferVT(dAtA []byte) (int, error)

func (*CreateObjectLayoutOp) MarshalToVT

func (m *CreateObjectLayoutOp) MarshalToVT(dAtA []byte) (int, error)

func (*CreateObjectLayoutOp) MarshalVT

func (m *CreateObjectLayoutOp) MarshalVT() (dAtA []byte, err error)

func (*CreateObjectLayoutOp) ProtoMessage

func (*CreateObjectLayoutOp) ProtoMessage()

func (*CreateObjectLayoutOp) Reset

func (x *CreateObjectLayoutOp) Reset()

func (*CreateObjectLayoutOp) SizeVT

func (m *CreateObjectLayoutOp) SizeVT() (n int)

func (*CreateObjectLayoutOp) String

func (x *CreateObjectLayoutOp) String() string

func (*CreateObjectLayoutOp) UnmarshalJSON

func (x *CreateObjectLayoutOp) UnmarshalJSON(b []byte) error

UnmarshalJSON unmarshals the CreateObjectLayoutOp from JSON.

func (*CreateObjectLayoutOp) UnmarshalProtoJSON

func (x *CreateObjectLayoutOp) UnmarshalProtoJSON(s *json.UnmarshalState)

UnmarshalProtoJSON unmarshals the CreateObjectLayoutOp message from JSON.

func (*CreateObjectLayoutOp) UnmarshalVT

func (m *CreateObjectLayoutOp) UnmarshalVT(dAtA []byte) error

type ObjectLayout

type ObjectLayout struct {

	// LayoutModel contains the definition of the layout model.
	// The Tab data field contains serialized ObjectLayoutTab messages.
	LayoutModel *layout.LayoutModel `protobuf:"bytes,1,opt,name=layout_model,json=layoutModel,proto3" json:"layoutModel,omitempty"`
	// contains filtered or unexported fields
}

ObjectLayout contains information about a layout of objects. This is the body of a world object with type "alpha/object-layout".

func AccessObjectLayout

func AccessObjectLayout(ctx context.Context, access world.AccessWorldStateFunc, objRef *bucket.ObjectRef) (*ObjectLayout, error)

AccessObjectLayout accesses the object layout object at a specific ref.

func LookupObjectLayout

func LookupObjectLayout(ctx context.Context, ws world.WorldState, objKey string) (*ObjectLayout, world.ObjectState, error)

LookupObjectLayout looks up the object layout in the world.

func NewObjectLayout

func NewObjectLayout() *ObjectLayout

NewObjectLayout constructs a new empty object layout.

func UnmarshalObjectLayout

func UnmarshalObjectLayout(ctx context.Context, bcs *block.Cursor) (*ObjectLayout, error)

UnmarshalObjectLayout unmarshals a object layout from a cursor. If empty, returns nil, nil.

func (*ObjectLayout) Clone

func (s *ObjectLayout) Clone() *ObjectLayout

Clone clones the layout object.

func (*ObjectLayout) CloneMessageVT

func (m *ObjectLayout) CloneMessageVT() protobuf_go_lite.CloneMessage

func (*ObjectLayout) CloneVT

func (m *ObjectLayout) CloneVT() *ObjectLayout

func (*ObjectLayout) EqualMessageVT

func (this *ObjectLayout) EqualMessageVT(thatMsg any) bool

func (*ObjectLayout) EqualVT

func (this *ObjectLayout) EqualVT(that *ObjectLayout) bool

func (*ObjectLayout) GetLayoutModel

func (x *ObjectLayout) GetLayoutModel() *layout.LayoutModel

func (*ObjectLayout) MarshalBlock

func (s *ObjectLayout) MarshalBlock() ([]byte, error)

MarshalBlock marshals the block to binary. This is the initial step of marshaling, before transformations.

func (*ObjectLayout) MarshalJSON

func (x *ObjectLayout) MarshalJSON() ([]byte, error)

MarshalJSON marshals the ObjectLayout to JSON.

func (*ObjectLayout) MarshalProtoJSON

func (x *ObjectLayout) MarshalProtoJSON(s *json.MarshalState)

MarshalProtoJSON marshals the ObjectLayout message to JSON.

func (*ObjectLayout) MarshalProtoText

func (x *ObjectLayout) MarshalProtoText() string

func (*ObjectLayout) MarshalToSizedBufferVT

func (m *ObjectLayout) MarshalToSizedBufferVT(dAtA []byte) (int, error)

func (*ObjectLayout) MarshalToVT

func (m *ObjectLayout) MarshalToVT(dAtA []byte) (int, error)

func (*ObjectLayout) MarshalVT

func (m *ObjectLayout) MarshalVT() (dAtA []byte, err error)

func (*ObjectLayout) ProtoMessage

func (*ObjectLayout) ProtoMessage()

func (*ObjectLayout) Reset

func (x *ObjectLayout) Reset()

func (*ObjectLayout) SizeVT

func (m *ObjectLayout) SizeVT() (n int)

func (*ObjectLayout) String

func (x *ObjectLayout) String() string

func (*ObjectLayout) UnmarshalBlock

func (s *ObjectLayout) UnmarshalBlock(data []byte) error

UnmarshalBlock unmarshals the block to the object. This is the final step of decoding, after transformations.

func (*ObjectLayout) UnmarshalJSON

func (x *ObjectLayout) UnmarshalJSON(b []byte) error

UnmarshalJSON unmarshals the ObjectLayout from JSON.

func (*ObjectLayout) UnmarshalProtoJSON

func (x *ObjectLayout) UnmarshalProtoJSON(s *json.UnmarshalState)

UnmarshalProtoJSON unmarshals the ObjectLayout message from JSON.

func (*ObjectLayout) UnmarshalVT

func (m *ObjectLayout) UnmarshalVT(dAtA []byte) error

func (*ObjectLayout) Validate

func (s *ObjectLayout) Validate() error

Validate performs cursory checks on the ObjectLayout block.

type ObjectLayoutTab

type ObjectLayoutTab struct {

	// ComponentId is the identifier of the selected component to load.
	// May be empty if not selected yet.
	ComponentId string `protobuf:"bytes,1,opt,name=component_id,json=componentId,proto3" json:"componentId,omitempty"`
	// ObjectInfo is the information about the object to render info about.
	ObjectInfo *object.ObjectInfo `protobuf:"bytes,2,opt,name=object_info,json=objectInfo,proto3" json:"objectInfo,omitempty"`
	// Path is the path to navigate to within the ObjectContainer.
	Path string `protobuf:"bytes,3,opt,name=path,proto3" json:"path,omitempty"`
	// contains filtered or unexported fields
}

ObjectLayoutTab contains data stored in the ObjectLayout TabDef. This message is serialized into the TabDef.data field.

func NewObjectLayoutTab

func NewObjectLayoutTab(componentID string, objectInfo *s4wave_web_object.ObjectInfo, path string) *ObjectLayoutTab

NewObjectLayoutTab constructs a new ObjectLayoutTab.

ComponentId is the identifier of the selected component to load. May be empty if not selected yet.

ObjectInfo is the information about the object to render info about.

Path is the path to navigate to within the ObjectContainer.

func (*ObjectLayoutTab) CloneMessageVT

func (m *ObjectLayoutTab) CloneMessageVT() protobuf_go_lite.CloneMessage

func (*ObjectLayoutTab) CloneVT

func (m *ObjectLayoutTab) CloneVT() *ObjectLayoutTab

func (*ObjectLayoutTab) EqualMessageVT

func (this *ObjectLayoutTab) EqualMessageVT(thatMsg any) bool

func (*ObjectLayoutTab) EqualVT

func (this *ObjectLayoutTab) EqualVT(that *ObjectLayoutTab) bool

func (*ObjectLayoutTab) GetComponentId

func (x *ObjectLayoutTab) GetComponentId() string

func (*ObjectLayoutTab) GetObjectInfo

func (x *ObjectLayoutTab) GetObjectInfo() *object.ObjectInfo

func (*ObjectLayoutTab) GetPath

func (x *ObjectLayoutTab) GetPath() string

func (*ObjectLayoutTab) Marshal

func (s *ObjectLayoutTab) Marshal() []byte

Marshal marshals the ObjectLayoutTab assuming no errors will be returned.

func (*ObjectLayoutTab) MarshalJSON

func (x *ObjectLayoutTab) MarshalJSON() ([]byte, error)

MarshalJSON marshals the ObjectLayoutTab to JSON.

func (*ObjectLayoutTab) MarshalProtoJSON

func (x *ObjectLayoutTab) MarshalProtoJSON(s *json.MarshalState)

MarshalProtoJSON marshals the ObjectLayoutTab message to JSON.

func (*ObjectLayoutTab) MarshalProtoText

func (x *ObjectLayoutTab) MarshalProtoText() string

func (*ObjectLayoutTab) MarshalToSizedBufferVT

func (m *ObjectLayoutTab) MarshalToSizedBufferVT(dAtA []byte) (int, error)

func (*ObjectLayoutTab) MarshalToVT

func (m *ObjectLayoutTab) MarshalToVT(dAtA []byte) (int, error)

func (*ObjectLayoutTab) MarshalVT

func (m *ObjectLayoutTab) MarshalVT() (dAtA []byte, err error)

func (*ObjectLayoutTab) ProtoMessage

func (*ObjectLayoutTab) ProtoMessage()

func (*ObjectLayoutTab) Reset

func (x *ObjectLayoutTab) Reset()

func (*ObjectLayoutTab) SizeVT

func (m *ObjectLayoutTab) SizeVT() (n int)

func (*ObjectLayoutTab) String

func (x *ObjectLayoutTab) String() string

func (*ObjectLayoutTab) UnmarshalJSON

func (x *ObjectLayoutTab) UnmarshalJSON(b []byte) error

UnmarshalJSON unmarshals the ObjectLayoutTab from JSON.

func (*ObjectLayoutTab) UnmarshalProtoJSON

func (x *ObjectLayoutTab) UnmarshalProtoJSON(s *json.UnmarshalState)

UnmarshalProtoJSON unmarshals the ObjectLayoutTab message from JSON.

func (*ObjectLayoutTab) UnmarshalVT

func (m *ObjectLayoutTab) UnmarshalVT(dAtA []byte) error

type UpdateObjectLayoutOp

type UpdateObjectLayoutOp struct {

	// ObjectLayoutKey is the object key for the ObjectLayout.
	ObjectLayoutKey string `protobuf:"bytes,1,opt,name=object_layout_key,json=objectLayoutKey,proto3" json:"objectLayoutKey,omitempty"`
	// LayoutModel is the updated layout model for the layout.
	LayoutModel *layout.LayoutModel `protobuf:"bytes,2,opt,name=layout_model,json=layoutModel,proto3" json:"layoutModel,omitempty"`
	// contains filtered or unexported fields
}

UpdateObjectLayoutOp sets the model of an ObjectLayout. The layout must already exist and have the correct type.

func (*UpdateObjectLayoutOp) CloneMessageVT

func (*UpdateObjectLayoutOp) CloneVT

func (*UpdateObjectLayoutOp) EqualMessageVT

func (this *UpdateObjectLayoutOp) EqualMessageVT(thatMsg any) bool

func (*UpdateObjectLayoutOp) EqualVT

func (this *UpdateObjectLayoutOp) EqualVT(that *UpdateObjectLayoutOp) bool

func (*UpdateObjectLayoutOp) GetLayoutModel

func (x *UpdateObjectLayoutOp) GetLayoutModel() *layout.LayoutModel

func (*UpdateObjectLayoutOp) GetObjectLayoutKey

func (x *UpdateObjectLayoutOp) GetObjectLayoutKey() string

func (*UpdateObjectLayoutOp) MarshalJSON

func (x *UpdateObjectLayoutOp) MarshalJSON() ([]byte, error)

MarshalJSON marshals the UpdateObjectLayoutOp to JSON.

func (*UpdateObjectLayoutOp) MarshalProtoJSON

func (x *UpdateObjectLayoutOp) MarshalProtoJSON(s *json.MarshalState)

MarshalProtoJSON marshals the UpdateObjectLayoutOp message to JSON.

func (*UpdateObjectLayoutOp) MarshalProtoText

func (x *UpdateObjectLayoutOp) MarshalProtoText() string

func (*UpdateObjectLayoutOp) MarshalToSizedBufferVT

func (m *UpdateObjectLayoutOp) MarshalToSizedBufferVT(dAtA []byte) (int, error)

func (*UpdateObjectLayoutOp) MarshalToVT

func (m *UpdateObjectLayoutOp) MarshalToVT(dAtA []byte) (int, error)

func (*UpdateObjectLayoutOp) MarshalVT

func (m *UpdateObjectLayoutOp) MarshalVT() (dAtA []byte, err error)

func (*UpdateObjectLayoutOp) ProtoMessage

func (*UpdateObjectLayoutOp) ProtoMessage()

func (*UpdateObjectLayoutOp) Reset

func (x *UpdateObjectLayoutOp) Reset()

func (*UpdateObjectLayoutOp) SizeVT

func (m *UpdateObjectLayoutOp) SizeVT() (n int)

func (*UpdateObjectLayoutOp) String

func (x *UpdateObjectLayoutOp) String() string

func (*UpdateObjectLayoutOp) UnmarshalJSON

func (x *UpdateObjectLayoutOp) UnmarshalJSON(b []byte) error

UnmarshalJSON unmarshals the UpdateObjectLayoutOp from JSON.

func (*UpdateObjectLayoutOp) UnmarshalProtoJSON

func (x *UpdateObjectLayoutOp) UnmarshalProtoJSON(s *json.UnmarshalState)

UnmarshalProtoJSON unmarshals the UpdateObjectLayoutOp message from JSON.

func (*UpdateObjectLayoutOp) UnmarshalVT

func (m *UpdateObjectLayoutOp) UnmarshalVT(dAtA []byte) error

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL